解决思路方法如下:
- 先查询主从库状态:show master status,show slave status; 发现从库Slave_SQL_Running:No ,而且Last Error字段:Error ‘Duplicate entry ‘xxxx‘ for key on table‘.
- 然后把entry报错那行分别在主库和从库查询,发现主库不存在,但是从库存在,所以导致主从数据不同步,SQL线程不工作了,因为从库数据比主库多,所以怀疑从库可以写,于是检查从库只读状态,show variables like "%read_only%"; 发现从库只读的,因为测试环境,数据不是很重要,所以最终将Slave库比主库多的数据删除。
-
然后重新启动Slave. start slave; 等待主从同步完成,问题解决。
- 其他查询状态的SQL:
show variables like "%commit%";
show variables like "%sync%";