Mysql 主从库延迟分析及建议

        innodb表在row模式下,没有主键的话,会导致每次做dml时都要全表扫描,这种情况在大表下更为突出,会导致从库大量延迟或从库被挂起。

        Mysql 从5.6开始支持多线程复制,通过slave parallel worker 配置多线程并发复制。他只能支持一个实例下多个数据库间的并发复制,并不能做到多表并发复制。

        传统的mysql复制是异步的,在主库提交完后,才在从库上应用一遍,会有一定时差。半同步复制(semi sync replication)只保证事务日志传到从库,不需要等到事务在从库应用提交成功,也不能做到真正意义上的绝对同步。

        因此,建议mysql主从数据库做到以下几点,可以减少主备间的延迟:

1、遵循开发规范,所有的表都需要有主键,当然可以的话也加上索引;

2、对于一些大表,提前规划好分区、分表、分库等策略,减小单表的复制压力,避免单表的压力导致整个实例的复制延迟;

3、提高存储IOPS性能,比如从sas升级到ssd,对io并发会有所提高;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值