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 小时前
基于flask图书数据管理系统,技术栈flask+MySQL+boostrap
python·mysql·flask
PHP实战开发录1 小时前
企业微信客户标签同步冲突排查记录
mysql·系统安全·php·企业微信·开发
又是重名了2 小时前
集团项目信创改造3 mysql to dm 插入获取主键
数据库·mysql·dameng
人机(未转人工)4 小时前
Flask + MySQL + Ollama(DeepSeek) 漏洞资产库 的网络安全资产分析平台的templates中(chat.html)渲染文件
mysql·flask·html
词却4 小时前
数据库基础:MySQL 安装与基础操作
数据库·mysql
xieliyu.4 小时前
MySQL 进阶笔记:用户 / 会话 / 全局 / 局部变量 + CASE 分支语法
开发语言·数据库·笔记·mysql
川石课堂软件测试4 小时前
自动化测试常见的异常处理
python·jmeter·mysql·docker·容器·单元测试·grafana
骇客野人5 小时前
MySQL / PostgreSQL 单表及表数据备份恢复实施方案
数据库·mysql·postgresql
动力 continue5 小时前
MySQL 与网络基础 · 外键约束及 TCP/UDP 协议
网络·tcp/ip·mysql
不过普通话一乙不改名5 小时前
补充:权限与角色
mysql