想看解决方法的直接拉到最后即可,有方法总结。
1.当启动从服务器执行show slave status \G;发现Slave_SQL_Running:No竟然为NO,从show出来的信息中发现了一些错误提示:
Last_SQL_Errno: 1007
Last_SQL_Error: Error 'Can't create database 'datalook'; database exists' on query. Default database: 'datalook'. Query: 'create database datalook'
2.提示不能创建数据库,数据库已经存在。便从网上搜索各种方法,发现基本就是这几条命令
mysql> stop slave;
mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;
mysql> start slave;
mysql> show slave status\G
3.试了一遍不行,看到另一个帖子说是需要多试几遍,试了几遍以后发现对我来说还是没效果。于是做了个大胆的操作;drop database将同步的数据库直接删掉了(本人练手的测试环境,生产环境千万不要执行该操作,否则小心有人请喝茶)
drop后show slave status \G了一下,发现又出现了新的错误
Last_SQL_Errno: 1049
Last_SQL_Error: Error 'Unknown database 'datalook'' on query. Default database: 'datalook'. Query: 'create table ykt (id int,name char)'
4.提示没有这个库了,按网上的方法又反复执行了几遍上述的几条命令,错误又变了:
Last_Errno: 1146
Last_Error: Error executing row event: 'Table 'datalook.ykt' doesn't exist'
5.看到一篇帖子让手动同步试一试,那就试试吧
mysql> stop slave;
mysql> change master to
-> master_host='192.168.203.132',
-> master_user='slave',
-> master_password='123456',
-> master_log_file='master-a-bin.000004',
-> master_log_pos=120;
Query OK, 0 rows affected, 2 warnings (0.02 sec)
mysql> start slave;
mysql> show slave status \G;
6.结果竟然成功了,跟大家看一下成果:
总结:
方法一:
1.先show slave status \G;查看错误信息
2.使用命令尝试,可以多尝试几遍:
mysql> stop slave;
mysql> SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1; START SLAVE;
mysql> start slave;
mysql> show slave status\G
方法二:
1..进行手动同步
mysql> stop slave;
mysql> change master to
-> master_host='192.168.203.132',
-> master_user='slave',
-> master_password='123456',
-> master_log_file='master-a-bin.000004',
-> master_log_pos=120;
Query OK, 0 rows affected, 2 warnings (0.02 sec)
mysql> start slave;
mysql> show slave status \G;