(5.9)mysql高可用系列——正常主从切换测试
【0】实验环境
操作系统:CentOS linux 7.5
数据库版本:5.7.24
数据库架构:主从复制,主库用于生产,从库用于数据容灾和主库备机,采用默认传统的异步复制。
主库IP:192.168.1.201 端口:3306
从库IP:192.168.1.202 端口:3306
【1】主从切换
主从配置文件参数
(1)主库要把自 #slave replication 行下面的所有配置注释掉(其实主库也可以全部开启)
(2)从库可以把所有参数都开启
#replication_new
log_bin=/mysql/log//binlog/mysql-bin #开启binlog
log_bin_index=/mysql/log//mysql-bin.index
binlog_format=row
binlog_rows_query_log_events=on
max_binlog_size= bind-address=0.0.0.0
server_id= #注意,这里从库的server_id和主库一定不能一样
expire_logs_days= #超过7天的binlog清理
innodb_support_xa=
binlog_cache_size=1M
log_bin_trust_function_creators= #同步存储过程、函数、触发器
innodb_flush_log_at_trx_commit=
sync_binlog=
transaction-isolation=read-committed
#增加的GTID参数
gtid_mode=on
enforce_gtid_consistency=1 #on:当发现语句/事务不支持GTID时,返回错误信息
log-slave-updates=1
binlog_gtid_simple-recovery=1 #5.7.6以下默认为off,5.7.6以上默认为on
#slave replication ----从这行起,下面的所有行,在主库注释掉
relay_log=/mysql/log//relaylog/mysql-relay.log
log-slave-updates=
#read_only=1 --主库要注释掉,从库最好放开
slave-parallel-type=LOGICAL_CLOCK
slave-parallel-workers= master_info_repository=table #master_info 会记录到 mysql.slave_master_info
relay_log_info_repository=table #relay_log 会记录到,mysql.slave_relay_log_info
relay_log_recovery=
slave_skip_errors=ddl_exist_errors
slave_preserve_commit_order=
操作设置
【1.1】主从都需要开二进制日志,切换的时候,确认从库的数据时最新的
-- 主库:192.168.1.201
set global read_only=1; -- 主库设置全局只读模式。
flush logs; -- 刷新日志(binlog)
show master status; -- 查看binlog状态,记录日志文件名和位置点pos 【1.2】确认从库202应用完了所有的中继日志
-- 从库:192.168.1.202
show slave status\G -- 或者也可以show processlist;查看
-- or select master_pos_wait(file,post); -- 用主库的文件在备库上查询,差距为0即为同步
stop slave;
reset master;
reset slave; -- 删除从数据库的中继日志文件,并且启用新的中继日志文件以及 重置change master信息
-- 不清理掉,下次重启服务还会开启从线程,把自己当从库做。
show master status; -- 记录binlog状态,记录日志文件名和位置点pos 【1.3】如果从库202上没有复制账户,需要创建 【1.4】主库201上,也需要清理相关的master和slave信息
reset master;
reset slave;
show master status; 【1.5】主从库的配置相关参数要改变启用
主库:201
cp /mysql/data/3306/my.cnf /mysql/data/3306/my.cnf.master
vi /mysql/data/3306/mysql.cnf 从库:202
cp /mysql/data/3306/my.cnf /mysql/data/3306/my.cnf.slave
vi /mysql/data/3306/mysql.cnf
service mysql restart 【1.6】new_slave 201 连接 new master 202
new从库:201
mysql -uroot -p123456 change master to
master_host='192.168.1.202',
master_port=3306,
master_user='rpl',
master_password='123456'
master_auto_position=1; start slave; 【1.7】数据测试
new 主库:202
create database test;
use test;
create table test1;
insert into test1 values(1);
commit; -- 然后new从库201核验
参考:
Mysql复制的日常维护管理:https://www.cnblogs.com/gered/p/11388986.html
(5.9)mysql高可用系列——正常主从切换测试的更多相关文章
- (5.8)mysql高可用系列——MySQL中的GTID复制(实践篇)
一.基于GTID的异步复制(一主一从)无数据/少数据搭建 二.基于GTID的无损半同步复制(一主一从)(mysql5.7)基于大数据量的初始化 正文: [0]概念 [0.5]GTID 复制(mysql ...
- (5.15)mysql高可用系列——MHA实践
关键词:MHA,mysql mha [1]需求 采用mysql技术,实现MHA高可用主从环境,预计未来数据量几百G MHA概念参考:MYSQL高可用技术概述 [2]环境技术架构 [2.1]MHA简介 ...
- (5.1)mysql高可用系列——高可用架构方案概述
关键词:mysql高可用概述,mysql高可用架构 常用高可用方案 20190918 现在业内常用的MySQL高可用方案有哪些?目前来说,用的比较多的开源方案分内置高可用与外部实现,内置高可用有如下: ...
- MySQL高可用系列之MHA(二)
一.參数说明 MHA提供了一系列配置參数.深入理解每一个參数的详细含义,对优化配置.合理使用MHA非常重要.非常多高可用性也都是通过合理配置一些參数而实现的. MHA包含例如以下配置參数,分别说明例如 ...
- MySQL高可用方案MHA在线切换的步骤及原理
在日常工作中,会碰到如下的场景,如mysql数据库升级,主服务器硬件升级等,这个时候就需要将写操作切换到另外一台服务器上,那么如何进行在线切换呢?同时,要求切换过程短,对业务的影响比较小. MHA就提 ...
- Mysql高可用架构(主从同步)
做高可用的优势 1.成本低 2.解决单点故障 3.不容易遇到性能瓶颈 一 .Mysql主从同步架构搭建案例 优点如下:·在业务繁忙阶段,在从服务器上可以执行查询工作(即我们常说的读写分离),降低主服务 ...
- mysql高可用研究(一) 主从+MHA架构 (转)
最近在研究mysql的高可用架构,自己想总结下常用的高可用方案都有哪些.有哪些优缺点以及应用的场景?搞得是头昏脑涨,天昏地暗,看了诸多资料,每次都觉得公说公有理婆说婆有理.其实嘛,大家说的都有一定的道 ...
- mysql高可用研究(二) 主从+MHA+Atlas
关于Atlas的详细介绍请访问:https://github.com/Qihoo360/Atlas/blob/master/README_ZH.md 为什么要使用Atlas?应用程序直连数据库不好吗? ...
- mysql高可用研究(一) 主从+MHA架构
最近在研究mysql的高可用架构,自己想总结下常用的高可用方案都有哪些.有哪些优缺点以及应用的场景?搞得是头昏脑涨,天昏地暗,看了诸多资料,每次都觉得公说公有理婆说婆有理.其实嘛,大家说的都有一定的道 ...
随机推荐
- hdu 5733 tetrahedron 四面体内切球球心公式
tetrahedron Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- Centos 7 安装 Xilinx SDSoC Development Environment
1.CentOS版本信息 $ cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core) 2.SDSoC下载地址: https://www. ...
- 流程控制(判断if switch)
判断语句 判断条件比特别多大 时候用switch 其他时候if语句比较方便 1.if……else a) if(判断条件) {执行语句:} b) else if (判断语句){执行语句:} ...
- HNOI2012矿场搭建
做完Mining Your Own Business后觉得这个题没什么意思了,数据范围小的连边数不清空都能A. 题解直接看这篇吧.做题的经历也挺……对吧. #include<iostream&g ...
- (十四)C语言之一维数组、二维数组
- 20165213 Exp 8 Web基础
Exp 8 Web基础 一.基础问题回答 (1)什么是表单 表单在网页中主要负责数据采集功能.一个表单有三个基本组成部分: 表单标签:这里面包含了处理表单数据所用CGI程序的URL以及数据提交到服务器 ...
- 基于XML的AOP配置(2)-环绕通知
配置方式: <aop:config> <aop:pointcut expression="execution(* com.itheima.service.impl.*.*( ...
- GitHub:IBM
ylbtech-GitHub:IBM 1.返回顶部 2.返回顶部 3.返回顶部 4.返回顶部 5.返回顶部 1. https://github.com/ibm 2. 6.返回顶部 ...
- WPF 快速制作可拖拽的对象和窗体
引用类库: 1.Microsoft.Expression.Interactions 2.System.Windows.Interactivity <Window x:Class="Wp ...
- SqlServer索引的原理与应用(转载)
SqlServer索引的原理与应用 索引的概念 索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法. 索引是什么:数据库中的索引类 ...