mysql备库和主库同步有延迟的问题是缺少索引引起的

mysql备库和主库同步有延迟的问题是某张表缺索引


3S0DAAAAik1RBTG8TMEMghi5K8QgRhypMZ1unHeqx9RrQF25cwnIxJGCCbUREAAAAACAgsqJkSsl+ky+AfUlU6K6VI8pgCGFGMAQAhgAAAAAaktR9sQoZJpyLlmh98Qo5V4YAAAAAIDoFGVPjEKmKecSbwAAAAAAoAo9MQAAAAAAQEGgJwYAAAAAACgIBDEAAAAAAEBBIIgBAAAAAAAKAkEMAAAAAABQEAhiAAAAAACAgkAQAwAAAAAAFASCGAAAAAAAoCAQxAAAAAAAAAWBIAYAAAAAACgIBDEAAAAAAEBBIIgBAAAAAAAKAkEMAAAAAABQEAhiAAAAAACAgkAQAwAAAAAAFISy7777rqJJs82CYpVjj+oW3AMAAAAAAIiHlEEMAAAAAACAuGE4CQAAAAAAKAgEMQAAAAAAQEEgiAEAAAAAAAoCQQwAAAAAAFAQCGIAAAAAAICCQBADAAAAAAAUBIIYAAAAAACgIBDEAAAAAAAABYEgBgAAAAAAKAgEMQAAAAAAQEEgiAEAAAAAAAoCQQwAAAAAAFAQCGIAAAAAAICCQBADAAAAAAAUBIIYAAAAAACgIBDEAAAAAAAABYEgBgAAAAAAKAgEMQAAAAAAQEEgiAEAAAAAAAoCQQwAAAAAAFAQCGIAAAAAAICCQBADAAAAAAAUBIIYAAAAAACgAJj9f0k6YQNBEYrsAAAAAElFTkSuQmCC




        昨天下午14:00,14:30,15:00和15:30,共出现4次从库179和主库有延迟的情况,延迟时间平均在50s左右。
        在出现问题时,管理员登陆数据库服务器,通过show processlist发现从库179在顺序执行类似如下的语句:
        UPDATE salesrule_coupon SET product_name='sss150307',order_amount='200000.0000'  WHERE orderid='77585'
       经分析,14:00,14:30,15:00和15:30这四个时间段,每分钟有大概有50条这样的update语句需要从库一个一个顺序执行,并且每条update完成时间需要1s。这样就出现了如下的现象,从库执行50条update语句就需要50s的时间,所以造成从库179和主库延迟(主库执行50条update语句可能是瞬间就能完成,因为主库的是多线程进行update,从库是单线程的)。
         最后发现每条update需要1s的原因是由于走的全表扫描(explain select * from salesrule_coupon where orderid=77884发现  ),在表salesrule_coupon的orderid字段添加索引后解决。
         alter table salesrule_coupon add index idx_salesrule_coupon_orderid (orderid);
         这样,在执行update语句,每条仅需0.03s完成。
         这是目前发现的原因,如果后期再有数据库延迟,继续观察分析。



 




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28916011/viewspace-1819386/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28916011/viewspace-1819386/

微信扫码订阅
UP更新不错过~
关注
  • 0
    点赞
  • 0
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值