MYSQL主从复制的几种方式
MYSQL主从复制的⼏种⽅式
MySQL 主从复制主要有以下⼏种⽅式:
基于 SQL 语句的复制(statement-based replication, SBR);
基于⾏的复制(row-based replication, RBR);
怎么把防火墙关了混合模式复制(mixed-based replication, MBR);
中合车队基于 SQL 语句的⽅式最古⽼的⽅式,也是⽬前默认的复制⽅式,后来的两种是 MySQL 5 以后才出现的复制⽅式。
RBR 的优点:
任何情况都可以被复制,这对复制来说是最安全可靠的
和其他⼤多数数据库系统的复制技术⼀样
多数情况下,从服务器上的表如果有主键的话,复制就会快了很多
RBR 的缺点:
推销媛打擦边球
binlog ⼤了很多
复杂的回滚时 binlog 中会包含⼤量的数据
主服务器上执⾏ UPDATE 语句时,所有发⽣变化的记录都会写到 binlog 中,⽽ SBR 只会写⼀次,这会导致频繁发⽣ binlog 的并发写问题
⽆法从 binlog 中看到都复制了写什么语句
猎狐杨建结局
SBR 的优点:科目二考试技巧之详细版
历史悠久,技术成熟  binlog ⽂件较⼩
binlog 中包含了所有数据库更改信息,可以据此来审核数据库的安全等情况
binlog 可以⽤于实时的还原,⽽不仅仅⽤于复制
主从版本可以不⼀样,从服务器版本可以⽐主服务器版本⾼房贷利率2013
SBR 的缺点:
不是所有的 UPDATE 语句都能被复制,尤其是包含不确定操作的时候。
复制需要进⾏全表扫描(WHERE 语句中没有使⽤到索引)的 UPDATE 时,需要⽐ RBR 请求更多的⾏级锁
对于⼀些复杂的语句,在从服务器上的耗资源情况会更严重,⽽ RBR 模式下,只会对那个发⽣变化的记录产⽣影响  数据表必须⼏乎和主服务器保持⼀致才⾏,否则可能会导致复制出错
执⾏复杂语句如果出错的话,会消耗更多资源。
⽆论选择哪种⽅式复制,都会影响到复制的效率以及服务器的损耗,甚以及数据⼀致性性问题,⽬前其实没有很好的客观⼿⼿段去评估⼀个系统更适合哪种⽅式的复制。
第⼆个问题是关于主从同步的监控问题, 有主从同步的状态信息,可以通过命令 show slave status获取,除了获知当前是否主从同步正常⼯作,另外⼀个重要指标就是
Seconds_Behind_Master,从字⾯理解,它表⽰当前 MySQL 主从数据的同步延迟,单位是秒,但这个指标从 DBA 的⾓度并不能简单的理解为延迟多少秒,感兴趣的同学可以⾃⼰去研究,但对于应⽤来说,简单的认为是主从同步的时间差就可以了,另外,当主从同步停⽌以后,重新启动同步,这个数值可能会是⼏万秒,取决于主从同步停⽌的时间长短,我们可以认为数据此时有很多天没有同步了,⽽这个数值越接近零,则说明主从同步延迟最⼩,我们可以采集这个指标并汇聚曲线图,来分析
我们的的同步延迟曲线,然后根据此曲线,给出⼀个合理的阀值,主从同步的时延⼩于阀值时,我们认为从库是同步的,此时可以安全的从从库读取数据。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。