zoukankan      html  css  js  c++  java
  • 主从 binlog_format 设置关系

    1. 主库是row,从库必须是row/mixed。如果是statement,主库有变更时,从库报如下错误(无论什么变更都报错,如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

  • 相关阅读:
    解题:HNOI 2008 玩具装箱
    2016级算法第一次上机助教版解题报告
    求解斐波那契数列复杂度分析
    数据库复习之规范化理论应用(第八次上机内容)
    数据库复习之规范化理论
    题目1042:Coincidence(最长公共子序列)
    题目1020:最小长方形(简单)
    题目1016:火星A+B(字符串拆分)
    题目1014:排名(结构体排序)
    题目1021:统计字符(hash简单应用)
  • 原文地址:https://www.cnblogs.com/jerry-rock/p/7392047.html
Copyright © 2011-2022 走看看