binlog_format主要有三种格式:statement、row、mixed
binlog_format=statement
 
master写入执行的SQL语句到binlog中,从库读取这些SQL语句并执行,这种基于SQL语句的复制方式是MySQL最早支持的复制方式。

binlog_format=mixed
 
可以将master的binlog_format配置成同时使用基于statement和row两者的组合格式,它记录日志取决于修改的类型,选择合适的格式来记录该修改。默认情况下使用statement格式记录日志,特定情况下转换成基于row格式记录。

binlog_format=row
 
MySQL5.7.7版本之后,把binlog_format的默认值修改为了row,master将修改表的event写入binlog中,并且master将该binlog发送给slave,slave重放binlog中的event。基于row格式复制时最安全的复制,slave需要的行锁更少。缺点就是在row格式下binlog会记录更多的数据,因为都是event。但是在row格式下可以打开binlog_rows_query_log_events参数,binlog在记录events的同时,也会记录原始的SQL语句,方便以后的查询和审计。

  复制过程中建议使用row格式,其他格式可能会造成主从数据不一致的情况。

©著作权归作者所有:来自51CTO博客作者zddbj的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. 课程学习记录之python简单库和正则
  2. Centos8 中如何缩减 XFS 分区格式的根目录
  3. Saltstack自动化操作记录(1)-环境部署
  4. Centos下堡垒机Jumpserver V3.0环境部署完整记录(1)-安装篇
  5. Docker容器时间跟主机时间保持同步的操作记录
  6. MFS+Keepalived双机高可用热备方案操作记录
  7. LVM常规操作记录梳理 [扩容、缩容、快照等]
  8. Centos下内网DNS主从环境部署记录
  9. LVS+Keepalived 高可用环境部署记录(主主和主从模式)

随机推荐

  1. Android手势滑动(左滑和右滑)
  2. 用网络adb连接调试Android
  3. Android常见问题总结(七)
  4. Android BitmapShader 实战 实现圆形、圆
  5. android binder机制之--(我是Server Porxy
  6. IOS与Android的session的存储区别
  7. Android Activity生命周期
  8. Android ListView内存优化
  9. Android studio项目不能编译,提示设备版本
  10. Android数据库代码备忘