mysql 复制slave服务器数据延迟的原因与解决方法

 

    延迟的固有原因是因为主服务器从服务器有两个线程,但只能单线程顺序执行,另外也有网络延迟等的原因。

    导致延迟的原因:

     主服务器可以并行多线程执行,而从服务器由于有两个进程需要互相依赖,不能并行执行。

    由于低效率join操作导致的长执行查询。

     硬盘IO瓶颈。

     数据锁。

     InnoDB 并发线程问题。

 延迟的解决方法:

   1、有效的组织你的数据:数据规则化、数据分区。

   2、分而治之,各个突破:足够多的slave;当出现所有slave lag(延迟)需要replication filtering和intermediary slave

   3、找出long-running查询,从构查询:简化查询或者用事务代替。使用事务的时候要考虑由于slave 执行导致的数据丢失。

   4、负载均衡。

   5、保持硬件持续更新。

   6、减少锁争夺:MyISAM锁表和InnoDB row-level锁。

 

    

 

你可能感兴趣的:(mysql,slave,lag,recovery)