视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
谨慎设置binlog_format=MIXED
2020-11-09 10:16:48 责编:小采
文档


my.cnf配置文件binlog_format=MIXED,而且使用的是默认隔离级别REPEATABLE-READ,那么这里面存在很重大的问题,导致主从数据不一致。下面我演示下:主从都是MySQ

my.cnf配置文件binlog_format=MIXED,而且使用的是默认隔离级别REPEATABLE-READ,那么这里面存在很重大的问题,网站空间,导致主从数据不一致。

下面我演示下:

主从都是MySQL5.5,binlog_format=MIXED,隔离级别REPEATABLE-READ。

master上的数据是

slave上的数据是

那么我在master上执行

你说slave上会报错吗?

答案是:NO,不会报错,没有任何提示。

不信?你可以试试。

那为啥不会报错呢?从手册上来看,只有下面几种情况才会转换为ROW模式记录

再改为binlog_format=ROW格式后,再执行刚才的语句,就会报错,如下

小结:如果你采用默认隔离级别REPEATABLE-READ,服务器租用,那么建议binlog_format=ROW。如果你是READ-COMMITTED隔离级别,binlog_format=MIXED和binlog_format=ROW效果是一样的,空间,binlog记录的格式都是ROW,对主从复制来说是很安全的参数。

本文出自 “贺春旸的技术专栏” 博客,请务必保留此出处

下载本文
显示全文
专题