mysql----binlog三种方式
Posted 光を追うのCaius
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql----binlog三种方式相关的知识,希望对你有一定的参考价值。
查看mysql主库binlog格式
binlog仅在主库设置即可,从库无需设置。
binlog的默认方式为statement
mysql主库binlog的三种方式
statement #最古老的方式,基于sql的主从复制,binlog里面保存的都是sql语句。优点,binlog日志量小,缺点,如果sql里面包含类似uuid()这类生成 随机值的函数,则会导致主从数据不一致。
row #基于行的主从方式,数据的一致性方面最安全可靠,binlog里面保存的是更改信息,binlog日志量大。阿里云默认使用这种方式。
mixed #statement和row格式的结合,一般使用statement。
主从复制方式的更改
set binlog_format = ROW; #仅对当前会话窗口有效,重新登录又会恢复原样。
set global binlog_format = ROW; #针对所有会话有效,但是重启后又会恢复statement。
vim /etc/my.cnf #永久生效
binlog_format = ROW
ROW格式的binlog不可以用statement格式的查看方式去查看,因为他是需要解码的。
mysqlbinlog -vv --base64-output=decode-rows master-bin.000003
以上是关于mysql----binlog三种方式的主要内容,如果未能解决你的问题,请参考以下文章