Mysql主从切换流程

  • 1.Mysql 版本
  • 2.场景
  • 3.环境
  • 4.切换步骤
    • 4.1 切断应用对主库的流量
    • 4.2 主库备库设置只读
    • 4.3 查看备库复制进程状态
    • 4.4 比对主备两边的GTID是否一致
    • 4.5 确认是否真正同完
    • 4.6 从库停掉复制进程并清空主从信息
    • 4.7 从库关闭只读开启读写,转为新主库
    • 4.8 主库设置执行新主库的复制链路,转为新备库,完成主从切换
    • 4.9 应用流量切向新主库
  • 5.参考

1.Mysql 版本

5.7.35

2.场景

主备正常切换,此场景主要是针对在主备同步复制正常的情况下进行的主备切换,例如:灾备演练,计划性的主备切换。

3.环境

主库:10.xx.220.40 3306
从库:10.xx.220.41 3306

4.切换步骤

4.1 切断应用对主库的流量

4.2 主库备库设置只读

set global read_only=ON;
set global super_read_only=ON;

设为只读后的效果

4.3 查看备库复制进程状态

show slave status\G
mysql> show slave status\G
*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 10.10.220.41Master_User: dt_syncMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 1316Relay_Log_File: relay.000002Relay_Log_Pos: 1529Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0Last_Error: Skip_Counter: 0Exec_Master_Log_Pos: 1316Relay_Log_Space: 1726Until_Condition: NoneUntil_Log_File: Until_Log_Pos: 0Master_SSL_Allowed: NoMaster_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: NoLast_IO_Errno: 0Last_IO_Error: Last_SQL_Errno: 0Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 41Master_UUID: 35d26faf-38bb-11ed-9929-0cda411df25cMaster_Info_File: mysql.slave_master_infoSQL_Delay: 0SQL_Remaining_Delay: NULLSlave_SQL_Running_State: Slave has read all relay log; waiting for more updatesMaster_Retry_Count: 86400Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: 35d26faf-38bb-11ed-9929-0cda411df25c:1-4Executed_Gtid_Set: 35d26faf-38bb-11ed-9929-0cda411df25c:1-4,
3a077b03-38bb-11ed-9a96-0cda411d1419:1-4Auto_Position: 1Replicate_Rewrite_DB: Channel_Name: Master_TLS_Version:
1 row in set (0.00 sec)


4.4 比对主备两边的GTID是否一致

select @@global.gtid_executed;

主库

从库

4.5 确认是否真正同完

主库

从库

4.6 从库停掉复制进程并清空主从信息

stop slave;
reset slave all;

4.7 从库关闭只读开启读写,转为新主库

set global read_only=off;
set global super_read_only=off;

4.8 主库设置执行新主库的复制链路,转为新备库,完成主从切换

mysql> CHANGE MASTER TO MASTER_HOST='10.xx.220.40',MASTER_USER='dt_sync',MASTER_PORT=3306,MASTER_PASSWORD='Xy12345678',master_auto_position=1;
Query OK, 0 rows affected, 1 warning (0.10 sec)mysql>
mysql> start slave;
Query OK, 0 rows affected (0.01 sec)mysql> show slave status\G
*************************** 1. row ***************************Slave_IO_State: Waiting for master to send eventMaster_Host: 10.10.220.40Master_User: dt_syncMaster_Port: 3306Connect_Retry: 60Master_Log_File: mysql-bin.000001Read_Master_Log_Pos: 1333Relay_Log_File: relay.000002Relay_Log_Pos: 414Relay_Master_Log_File: mysql-bin.000001Slave_IO_Running: YesSlave_SQL_Running: YesReplicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0Last_Error: Skip_Counter: 0Exec_Master_Log_Pos: 1333Relay_Log_Space: 611Until_Condition: NoneUntil_Log_File: Until_Log_Pos: 0Master_SSL_Allowed: NoMaster_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: NoLast_IO_Errno: 0Last_IO_Error: Last_SQL_Errno: 0Last_SQL_Error: Replicate_Ignore_Server_Ids: Master_Server_Id: 40Master_UUID: 3a077b03-38bb-11ed-9a96-0cda411d1419Master_Info_File: mysql.slave_master_infoSQL_Delay: 0SQL_Remaining_Delay: NULLSlave_SQL_Running_State: Slave has read all relay log; waiting for more updatesMaster_Retry_Count: 86400Master_Bind: Last_IO_Error_Timestamp: Last_SQL_Error_Timestamp: Master_SSL_Crl: Master_SSL_Crlpath: Retrieved_Gtid_Set: Executed_Gtid_Set: 35d26faf-38bb-11ed-9929-0cda411df25c:1-4,
3a077b03-38bb-11ed-9a96-0cda411d1419:1-4Auto_Position: 1Replicate_Rewrite_DB: Channel_Name: Master_TLS_Version:
1 row in set (0.00 sec)

4.9 应用流量切向新主库

5.参考

MySQL 主从切换步骤
https://blog.csdn.net/sinat_36757755/article/details/124049382
MySQL主从复制【基于GTID复制】
https://blog.csdn.net/JohnnyG2000/article/details/124701214

Mysql主从切换流程相关推荐

  1. 【ceph】CEPH 单活MDS主从切换流程|REPLAY

    代码基于ceph nautilus版本 MDS关键概念 想要理解MDS切换过程,首先需要理清一些基本概念. MDSMAP 包含整个ceph集群的所有mds的状态信息:fs个数.fs名称.各mds状态. ...

  2. mysql主从配置流程

    一.mysql主从配置原理 1.master将操作记录写到二进制日志中(binary log)中: 2.slave IO 线程将master的binary log events读写到它的中继日志(re ...

  3. mycat mysql程序_MyCat + MySQL 主从部署流程(上)

    背景 本周研究了一下数据库中间件 MyCat ,并验证了 MyCat 单机 + MySQL 主从复制 的部署方案,本文将整理 MyCat 单机的 Schema 的几种部署方案,并以 MyCat 单机 ...

  4. mysql主从切换(正常切换)

    环境: 主从:mysql 5.6.10 centos 6.5 步骤: 主从库创建复制账号: 建议主从库复制账号密码一模一样. grant all privileges on *.* to '$user ...

  5. mycat mysql 主从切换_Mycat读写分离与主从切换

    环境说明 本文的环境信息: 192.168.1.248: slave节点 192.168.1.250: master节点 数据库服务准备工作 主从配置完成后,Slave_IO_Running和Slav ...

  6. mysql主从切换gtid不一致_解决mysql使用GTID主从复制错误问题

    解决mysql使用GTID主从复制错误问题 做MySQL主从的话肯定会遇到很多同步上的问题, 大多数都是由于机器宕机,重启,或者是主键冲突等引起的从服务器停止工作, 这里专门收集类似问题并提供整理解决 ...

  7. ceph 单活mds主从切换流程

    本文的所有的分析仅基于个人理解,初学ceph不久,很多地方都是浅显的认识.代码基于ceph nautilus版本.且只分析单活MDS的切换,多活MDS暂不关注 文章目录 mds关键概念 mdsmap ...

  8. c+mysql主从切换_mysql主从配置

    引言: 双11,阿里云服务器打折,于是我忍不住又买了一台服务器,于是咱也是有两台服务器的爷们了,既然有了两台服务器,那么肯定要好好利用一下吧,那么就来玩玩mysql的主从配置吧. 准备 两台数据库服务 ...

  9. mysql主从切换脚本_mysql+keepalived主从切换脚本 转

    MySQL架构为master-slave(主从),master故障自动切换到slave上.当然也可以设置为双master,但这里有个弊端:就是当主的压力很大时,从上延时很大,比如落后2000秒,此时主 ...

  10. mysql主从切换gtid不一致_GTID 复制、主从不一致跳过操作、快速切换master

    1. 部署 GTID 全局事务标识  mysql 5.6 加入 1.1 准备 配置文件 ## gtid repl config need server_id=52 #开启gtid gtid_mode= ...

最新文章

  1. OSChina 周日乱弹 —— 做一只舔狗,开心时就去舔她,不开心时就舔自己
  2. 永洪报表工具_该怎么选BI工具
  3. 深入理解Linux IO复用之epoll
  4. YY语音招聘运维工程师(web方向),有兴趣的伙伴快来围观
  5. 老手萌新学习composer的使用
  6. LeetCode3 无重复字符的最长子串
  7. MyEclipse字体和保护色设置
  8. github 安装浏览器导航插件Octotree
  9. 【UI界面设计】网页设计基础笔记
  10. 【芯片前端】Filelist -f/-F的文件解析方式探究
  11. java课设--简单的学生成绩管理系统(可视化界面,连接MYsql数据库)
  12. Vivado 2020 安装
  13. 猪八戒网站上的骗子为什么这么多
  14. 无处不在_电动汽车无处不在。 那丰田为什么还要继续投资氢呢?
  15. uniApp 使用uView遇到的小坑 LineProgress 线形进度条
  16. 安卓7.0 申请相机及读写权限
  17. c语言主函数调用函数
  18. SQL 随机抽样的总结
  19. 一文了解Python流程控制
  20. c语言考试系统外文文献,C语言考试系统的设计[文献翻译]

热门文章

  1. IE6丢失COOKIE的问题,令人郁闷的P3P协议
  2. 界面的创建(高仿QQ登入界面)
  3. cvCalcBackProject() 直方图反向投影匹配
  4. python turtle画小狗_python-turtle-画雪花
  5. yolov3视频检测图像上显示准确率
  6. php 内网全部ip,如何ping局域网内所有IP
  7. QT: QTableWidget 表格中按钮槽函数 获取表格该按钮所在的行号信息
  8. Opengl1.1绘图之GL_COLOR_LOGIC_OP
  9. string和string.h以及cstring的区别
  10. java 开发电商平台,JAVA项目实战开发电商项目案例(一)前后端项目分离