加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 电商 > 正文

mysql 主从 binlog_format 设置关系

发布时间:2020-12-31 14:47:36 所属栏目:电商 来源:网络整理
导读:《mysql 主从 binlog_format 设置关系》要点: 本文介绍了mysql 主从 binlog_format 设置关系,希望对您有用。如果有疑问,可以联系我们。 导读:1. 主库是row,从库必须是row/mixed.如果是statement,主库有变更时,从库报如下错误(无论什么变更都报错,如inser

《mysql 主从 binlog_format 设置关系》要点:
本文介绍了mysql 主从 binlog_format 设置关系,希望对您有用。如果有疑问,可以联系我们。

导读:1. 主库是row,从库必须是row/mixed.如果是statement,主库有变更时,从库报如下错误(无论什么变更都报错,如insert/update/delete/alte... 1. 主库是row,如insert/update/delete/alter等):
??? Last_Error: Error executing row event: 'Cannot execute statement: impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT.'

2. 主库是statement,从库可以是任意模式(statement/mixed/row),但可能造成数据不一致,故不建议使用.

3. 主库是mixed,从库必须是row/mixe格式.如果从库是statement,主库一般情况下修改数据,从库不报错.特殊情况下,则从库报如下错误.
??? Last_Error: Error executing row event: 'Cannot execute statement: impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT.'

以上所说的一般情况是:主库将binlog记录为statement格式.
以上所说的特殊情况是:主库将binlog记录为row格式.具体为以下几种:
(1) 当时用UUID()函数时
(2) 当一个或多个拥有AUTO_INCREMENT列的表被更新同时有‘trigger’或者‘stored function’被调用时
(3) 执行INSERT DELAYED时
(4) 当视图里的某一部分需要row-based复制(例如UUID())时,创建该视图的语句被改为row-based
(5) 使用用户自定义函数(UDF)时
(6) 当某语句被判定为row-based,并且执行它的session需要用到临时表,则session下的所有子语句都将以ROW格式记录
(7) 当使用USER(),CURRENT_USER()或者 CURRENT_USER
(8) 当语句引用了一个或多个system variables.
(9) 当使用LOAD_FILE()

mysql将mixed记录为row的几种情况,请参考官方文档:
https://dev.mysql.com/doc/refman/5.7/en/binary-log-mixed.html

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读