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. 完成~
相关推荐
在未来等你1 小时前
SQL进阶之旅 Day 21:临时表与内存表应用
sql·mysql·postgresql·database·temporary-table·memory-table·sql-optimization
小Tomkk3 小时前
阿里云 RDS mysql 5.7 怎么 添加白名单 并链接数据库
数据库·mysql·阿里云
寒山李白5 小时前
MySQL复杂SQL(多表联查/子查询)详细讲解
sql·mysql·子查询·多表联查
冰橙子id5 小时前
centos7编译安装LNMP架构
mysql·nginx·架构·centos·php
玛奇玛丶6 小时前
面试官:千万级订单表新增字段怎么弄?
后端·mysql
天天摸鱼的java工程师7 小时前
从被测试小姐姐追着怼到运维小哥点赞:我在项目管理系统的 MySQL 优化实战
java·后端·mysql
Clang's Blog7 小时前
一键搭建 WordPress + MySQL + phpMyAdmin 环境(支持 PHP 版本选择 & 自定义配置)
数据库·mysql·php·wordpr
异常君7 小时前
高并发数据写入场景下 MySQL 的性能瓶颈与替代方案
java·mysql·性能优化
RestCloud8 小时前
如何通过ETLCloud实现跨系统数据同步?
数据库·数据仓库·mysql·etl·数据处理·数据同步·集成平台
程序员岳焱8 小时前
Java 与 MySQL 性能优化:MySQL 慢 SQL 诊断与分析方法详解
后端·sql·mysql