灾难恢复 - MySQL中文参考手册
2019-09-11 阅读 : 次
### # 主库master宕机
登录从库show processlist查看两个线程的更新状态
mysql> show processlist/G*************************** 1. row *************************** Id: 6 User: rep Host: 192.168.0.200:45738 db: NULLCommand: Binlog Dump Time: 102 State: Master has sent all binlog to slave; waiting for binlog to be updated Info: NULL*************************** 2. row *************************** Id: 7 User: root Host: localhost db: NULLCommand: Query Time: 0 State: NULL Info: show processlist
查看其它从库的master.info文件的同步情况
# cat /usr/local/mysql/data/3307/data/master.info# cat /usr/local/mysql/data/3308/data/master.info18mysql-bin.000001423192.168.0.200repreppasswd330660001800.0000
确保更新完毕,看看几个从库中那个最快,经过测试没有延迟的情况POS点差距很小,甚至是一致的。(确保从库和主库的一致性更高,数据丢失更少,选择将同步最快的提升为主库)
确保所有
relay log全部更新完毕
在每个从库执行stop slave io_thread;
show processlist;直到看到
Has read all relay log;表示从库的更新都执行完毕。
登录选定好的从库例端口3307 执行
stop slave; 和
reset master;
进入到选定的从库数据库端口3307文件目录删除
master.info
relay-log.info,检查授权表,
read-only参数
3307端口提升从库为主库
vim /usr/local/mysql/data/3307/my.cnf
开启log-bin = /usr/local/mysql/data/3307/mysql-bin
另外:如果存在log-slave-updates
read-only等参数一定要注释掉,然后重启mysql服务器。
本文地址:https://www.helloaliyun.com/tutorial/514.html