之前在课程中对MySQL主从复制的故障处理涉及的比较少,所以这里打算利用手记把在工作中遇到的一些问题及处理方式,记录下来。
今天先说说其中一种故障的分析及处理方法,在我们的监控系统中收到了如下的报警信息:
服务器监控系统 DBA Monitor V1.0
------------------------------------------------------
报警服务器:**************
报警主机名:**************:3306
-------------------------------------------------------
报警时间:2017-10-20 11:10:03
-------------------------------------------------------
报警内容:
Materid-185:mysql-bin.002114|391767716
Slaveid-189:mysql-bin.002114|391767716|mysql-bin.002114|384247058|125
分析:
通过报警内容我们可以发现这组服务器的主从服务器之间产生了延迟.从报警内容可以知道主的binlog日志和已经同步到从的relay_log日志点相同,日志文件全部是但是mysql-bin.002114 日志点为391767716,但是slave上并没有把所有rely-log的日志都恢复完成,所以很有可能是主上在执行大事务造成的主从延迟,通过分析主上的binlog日志可以发现.在主上自384247058 日志点起确实执行了一个大批量事务操作。
处理方案:等待自然恢复或采用多线程复制的方式。
热门评论
多线程复制能起作用么?大事务执行完后传到从服务器,后来的事务不是在大事务运行时运行的,要等到大事务运行完才执行。我的理解可能有问题。求指教。