首页 技术 正文
技术 2022年11月15日
0 收藏 600 点赞 3,733 浏览 884 个字

一般来说,为了保险起见,在主从库维护中,有时候需要跳过某个无法执行的命令,需要在slave处于stop状态下,执行 set global sql_slave_skip_counter=1以跳过命令。但在测试和开发环境下,有时候为了快速解决不影响开发,需要使用set global sql_slave_skip_counter=N,其意思即为在start slave时,从当前位置起,跳过N个event。每跳过一个event,则N–.

这一点还是很好验证的,测试过的就有明确体会了,不想测试的可参考下http://www.cnblogs.com/yhlx/articles/3740598.html。

除了跳过N个event外,还有一个很重要的参数是slave-skip-errors,其有四个可用值,分别为:off、all、ErorCode、ddl_exist_errors。

根据各个值得字面意思即可知道它们的用法,但是其中ddl_exist_errors值却比较特别,它代表了一组errorCode的组合,分别是:

1007:数据库已存在,创建数据库失败
1008:数据库不存在,删除数据库失败
1050:数据表已存在,创建数据表失败
1050:数据表不存在,删除数据表失败
1054:字段不存在,或程序文件跟数据库有冲突
1060:字段重复,导致无法插入
1061:重复键名
1068:定义了多个主键
1094:位置线程ID
1146:数据表缺失,请恢复数据库

但是还要注意的是,该值只在mysql cluster版的mysqld中才可用,而在mysql Server版的mysqld中不可用。

使用这个参数除了http://blog.csdn.net/wulantian/article/details/38369259和http://bugs.mysql.com/bug.php?id=39393提及的bug外,更严重的是它会让不该忽略的操作也被忽视,进而导致业务不正确,尤其是如果从库提供和主库一样严重程度的业务时,比如实时风控和程序化操作基于的实时盈亏预警,为此有些厂商甚至都出现过几百万的索赔。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,942
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,466
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,281
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,095
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,728
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,765