mysql不同步数据_mysql主从数据库不能同步的解决办法

作者:明生

一般情况下遇到mysql主从数据库的数据不能同步的话,可以从slave数据库的状态看出来,这里建议通过脚本来做实时监控。

检查slave数据库的状态是否出现error,或是检查Seconds_Behind_Master参数后跟的是否为数字,如果有异常则显示为null。

1、我们需要从主库通过mysqldump命令备份一份数据出来,并记录主库的file和position。

导出命令如下:

mysqldump -R -u root

-p test --add-drop-table >

/data0/test.20111101.sql

2、将备份出来的数据文件拷贝到从库主机上,然后将从库stop

slave后就可以导入拷贝过来的数据了。

导入命令如下:

mysql -u root -p mysql

< mysql.20111101.sql

3、导入数据后登录从数据库,change到主库的记录位置。

命令如下:

change master to master_log_file='master-mysql-bin.000001',master_log_pos=225302970;

start slave;

然后通过show slave

status\G即可查看从库状态。

4、当检查slave数据库服务器状体出现如下错误时,

Last_Error: Error 'Duplicate entry '1' for key 'PRIMARY'' on query. Default database: 'dnslog'. Query: 'insert into logop (logtime,tbname, sqlstr) VALUES('2011-10-25 07:00:00','logcount04','C/x??}?

根据提示可以知道是由于重复插入数据导致错误。先stop

slave然后使用SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;再执行start

slave后最后再通过show slave status\G;查看slave从库状态。

5、如果还是不能解决问题则需要修复表,先stop slave然后repair

table logop;再执行start slave后最后通过show slave status\G;查看slave从库状态。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值