問題一:Slave_IO_Running:Connecting
把從機的防火牆關閉就可以了
systemctl stop firewalld
問題二:Slave_SQL_Running: NO
解決方法一:忽略錯誤繼續同步
- 先停掉slave
mysql> stop slave - 跳過slave上的1個錯誤
mysql>setglobalsql_slave_skip_counter=1; - 再啟動slave
mysql> start slave; - 查看同步狀態
mysql> show slave status\G;
解決方法二:重新做主從完成同步
- 先進入主庫進行鎖表,注意鎖完之后窗口不要關閉
mysql> flushtablewithreadlock; - 把數據備份
mysqldump -u 用戶名 -p數據庫 > /root/advanced.sql - 再新開個窗口,查看主數據庫信息
mysql> show master status;

- 在從庫上停止slave
mysql> stop slave; - 導入備份的數據文件
mysql> source /data/bak.sql; - 重置同步
mysql> reset slave; - 重新設置同步節點
mysql> CHANGE MASTERTOMASTER_HOST='192.168.132.88',MASTER_PORT=3306,MASTER_USER='zhangsan',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=26646;
HOST PORT USER PASSWORD LOG_FILE LOG_POS 自己對應着自己的主機填 - 開啟slave
mysql> start slave; - 查看slave狀態
mysql> show slave status\G;
如果顯示如下則表示成功
Slave_IO_Running: Yes
Slave_SQL_Running: Yes - 對主數據庫解鎖
mysql> unlock tables; - 在主庫中添加或修改數據,看從庫數據是否同步。
