MySQL中怎么实现主从同步机制,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
最直观的表现为:
mysql> show slave status\G;
// 状态一
Seconds_Behind_Master: NULL
// 状态二
Seconds_Behind_Master: 0
// 状态三
Seconds_Behind_Master: 79
连续查询,大部分时间该属性值=0,偶发性出现Null或者79等延时值。导致观察主从同步延时的监控持续报警。
故障原因及解决方案
多台备机的server-id一致,导致主机无法长时间同某一台备机连接,进而无法正常同步。
修改server-id后,重启数据库恢复。
主从同步机制
MySQL的主从同步,又称为复制(replication),是一种内置的高可用高性能集群解决方案,主要功能有:
数据分布:同步不需要很大带宽,可以实现多数据中心复制数据。
读取的负载均衡:通过服务器集群,可以通过DNS轮询、Linux LVS等GSLB(全局负载均衡)方式,降低主服务器的读压力。
数据库备份:复制是备份的一部分,但并不能代替备份。还需要与快照相结合。
高可用性和故障转移:从服务器可以快速切换为主服务器,减少故障的停机时间和恢复时间。
主从同步分为3步:
主服务器(master)把数据更改记录到二进制日志(binlog)中。
从服务器(slave)把主服务器的二进制日志复制到自己的中继日志(relay log)中。
从服务器重做中继日志中的日志,把更改应用到自己的数据库上,达到数据的一致性。
主从同步是一个异步实时的同步,会实时的传输,但存在执行上的延时,如果主服务器压力很大,延时也会相应扩大。
大型站长资讯类网站!