当前位置:  开发笔记 > 编程语言 > 正文

MySQL二进制日志复制:可以设置为忽略错误吗?

如何解决《MySQL二进制日志复制:可以设置为忽略错误吗?》经验,为你挑选了2个好方法。

我正在运行一个主从MySQL二进制日志复制系统(p!),对于某些数据,它不同步(意味着,主机拥有的数据多于从机).但是奴隶经常在最轻微的MySQL错误上停止,这可以被禁用吗?(也许是复制奴隶的my.cnf设置ignore-replicating-errors或者某种类型;))

这就是发生的事情,当奴隶试图复制一个不存在的物品时,奴隶就会死亡.快速查看SHOW SLAVE STATUS\G;

       Slave-IO-Running: Yes
      Slave-SQL-Running: No
        Replicate-Do-DB: 
             Last-Errno: 1062
             Last-Error: Error 'Duplicate entry '15218' for key 1' on query. Default database: 'db'. Query: 'INSERT INTO db.table ( FIELDS ) VALUES ( VALUES )'

我通过执行以下操作立即修复(一旦我意识到奴隶已经停止):

STOP SLAVE;
RESET SLAVE;
START SLAVE;

... ...最近这已经变得有点烦人了,在我吐出某种PHP为我做这个之前,我想知道是否有一些my.cnf条目在第一次错误时不会杀死奴隶.

干杯,

/ MP



1> shantanuo..:

停止奴隶; set global sql_slave_skip_counter = 1; 开始奴隶;

您只能忽略当前错误并继续复制过程.



2> 小智..:

是的,在my.cnf中使用--slave-skip-errors = xxx,其中xxx是'all'或逗号sep错误代码列表.


这样做的公平警告确实可以破坏您的从属数据库.出于某种原因,它们是错误的.:)
推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有