MySql 9 in Docker 主从切换

继上一篇《MySql 9 in Docker 利用克隆插件搭建主从》我们说了主从复制后, 那么我们接下来说说如何手动的进行主从切换。

动手~

1. 原主库设置

  1. 切断应用对主库的访问

  2. 主库设置为只读状态

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

  3. 主库执行 SELECT @@gtid_executed;查看GTID;

2. 原从库设置

  1. 查看备库复制进程状态,确认Slave_IO_Running,Slave_SQL_Running状态为YES,Seconds_Behind_Master为0, 则代表两边数据一致。

    show slave status

  2. 执行 SELECT GTID_SUBSET('<主库查询的GTID>', @@gtid_executed); 对比主从数据是否一致,如果输出结果为1,则表示一致;

  3. 停止复制进程,清空主从同步信息

    stop REPLICA;
    reset REPLICA all;

  4. 开启读写

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

  5. 根据实际情况设置数据库参数是否与原主库一致

3. 设置原主库为从库

  1. 原主库上开启主从复制
sql 复制代码
CHANGE REPLICATION SOURCE TO 
	SOURCE_HOST='172.17.0.7', 
	SOURCE_PORT = 3306, 
	SOURCE_USER='repl', 
	SOURCE_PASSWORD='123456', 
	GET_SOURCE_PUBLIC_KEY=1, 
	SOURCE_AUTO_POSITION=1;

start REPLICA;

SHOW REPLICA STATUS\G;
  1. 接下来进行一下验证步骤
  2. 完成~
相关推荐
drebander12 分钟前
MySQL 查询优化案例分享
数据库·mysql
小林coding3 小时前
阿里云 Java 后端一面,什么难度?
java·后端·mysql·spring·阿里云
18号房客3 小时前
高级sql技巧进阶教程
大数据·数据库·数据仓库·sql·mysql·时序数据库·数据库架构
翔云1234565 小时前
MySQL purged gtid是如何生成和维护的
数据库·mysql
平行线也会相交6 小时前
云图库平台(三)——后端用户模块开发
数据库·spring boot·mysql·云图库平台
恒辉信达7 小时前
hhdb客户端介绍(53)
数据库·mysql·hhdb·数据库可视化界面客户端
Hello.Reader8 小时前
Redis热点数据管理全解析:从MySQL同步到高效缓存的完整解决方案
redis·mysql·缓存
是程序喵呀9 小时前
MySQL备份
android·mysql·adb
指尖上跳动的旋律9 小时前
shell脚本定义特殊字符导致执行mysql文件错误的问题
数据库·mysql
苹果醋313 小时前
2020重新出发,MySql基础,MySql表数据操作
java·运维·spring boot·mysql·nginx