复制的本质是可以帮助MySQL分担读负载, 并不能实现写负载. MySQL的高可用可以为高可用, 灾难恢复, 备份提供了很多的选择.
MySQL的复制是基于主库上的binglog二进制日志来进行增量推送的, 所以在同一个时间内如果从主库写入数据, 然后快速的向从库读取数据是没有办法做到十分准时的
纪录了所有对MySQL数据库的修改事件 包括增删改查时间和对表结构的修改事件
备注:binlog日志只会记录事务成功提交的日志, 未成功的不会存储
二进制日志基于row格式的优点
当我们因为误操作修改了数据库中的数据, 同时有没有备份可以恢复时, 我们就可以通过分析二进制日志, 对日志中记录的数据修改操作做反向处理的方式来达到恢复数据的目的
二进制日志基于row格式的缺点
特点:
总结: 建议使用 binlog_format = mixed 混合日志格式或者是 binlog_format = row的形式 . 如果使用了行的格式, name需要配置一下binlog_row_image = minimal ,这样可以减少一些不必要的io操作 等于full时是不想管的字段update也会被记录, 使用minimal只会记录相关被update的方式