MySQL配置主从复制时出现的Slave_IO_Running:Connecting 和 Slave_SQL_Running: NO
问题一:Slave_IO_Running:Connecting
把从机的防火墙关闭就可以了
systemctl stop firewalld
问题二:Slave_SQL_Running: NO
解决方法一:忽略错误继续同步
- 先停掉slave
mysql> stop slave - 跳过slave上的1个错误
mysql>
set
global
sql_slave_skip_counter=1;
- 再启动slave
mysql> start slave; - 查看同步状态
mysql> show slave status\G;
解决方法二:重新做主从完成同步
- 先进入主库进行锁表,注意锁完之后窗口不要关闭
mysql> flush
table
with
read
lock;
- 把数据备份
mysqldump -u 用户名 -p
数据库 > /root/advanced.sql
- 再新开个窗口,查看主数据库信息
mysql> show master status;
- 在从库上停止slave
mysql> stop slave; - 导入备份的数据文件
mysql> source /data/bak.sql; - 重置同步
mysql> reset slave; - 重新设置同步节点
mysql> CHANGE MASTER
TO
MASTER_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; - 在主库中添加或修改数据,看从库数据是否同步。