确认从库复制状态正常,延迟接近0;2. 停止选定从库的复制线程并清除配置;3. 将该从库提升为新主库,启用二进制日志并创建复制用户;4. 记录新主库日志位置,重新配置其他从库指向新主库;5. 启动复制并验证状态,建议结合高可用%ignore_a_1%实现自动切换。

在MySQL主从复制架构中,当主库出现故障或需要维护时,可能需要将某个从库切换为主库,继续提供写操作服务。这个过程称为“主从切换”或“故障转移”。以下是实现MySQL从库切换为主库的常用操作方法。
确认当前主从状态
在切换前,先检查主库和从库的复制状态,确保数据同步已完成或接近完成。
登录从库执行:SHOW SLAVE STATUSG,查看以下关键字段:Slave_IO_Running 和 Slave_SQL_Running 应为 YesSeconds_Behind_Master 值应接近 0,表示延迟小记录从库的 Relay_Master_Log_File 和 Exec_Master_Log_Pos,用于比对数据一致性
停止从库复制线程
选择一个数据最完整的从库作为新的主库,停止其复制进程。
执行命令:STOP SLAVE;可进一步执行:RESET SLAVE ALL; 清除从库复制配置(切换后不再作为从库使用时建议执行)
提升从库为主库
停止复制后,该从库即可作为新的主库对外提供写服务。
Ai Mailer
使用Ai Mailer轻松制作电子邮件
49 查看详情
确保新主库的 my.cnf 中已开启 log-bin(启用二进制日志)若其他从库还需继续同步,需在新主库上创建复制用户:CREATE USER ‘repl’@’%’ IDENTIFIED BY ‘password’;GRANT REPLICATION SLAVE ON *.* TO ‘repl’@’%’;记下新主库的二进制日志文件名和位置:SHOW MASTER STATUS;
重新配置其他从库指向新主库
将剩余从库的复制源指向新的主库。
在其他从库上执行:STOP SLAVE;CHANGE MASTER TO MASTER_HOST=’new_master_ip’, MASTER_USER=’repl’, MASTER_PASSWORD=’password’, MASTER_LOG_FILE=’mysql-bin.xxxxxx’, MASTER_LOG_POS=xxxxxx;START SLAVE;再次执行 SHOW SLAVE STATUSG 确认复制正常运行
基本上就这些。整个切换过程要确保数据不丢失,建议在切换前停止应用写入,或通过半同步复制机制提高可靠性。手动切换适用于小规模环境,生产环境建议结合MHA、Orchestrator等高可用工具自动完成切换。
以上就是mysql如何切换从库_mysql从库切换操作方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1010444.html
微信扫一扫
支付宝扫一扫