温馨提示×

【Mysql】JDB2导致磁盘io使用率高 导致mysql延迟过高

发布时间:2020-08-08 16:01:11 来源:ITPUB博客 阅读:576 作者:小亮520cl 栏目:MySQL数据库
参考连接:http://www.bubuko.com/infodetail-971804.html

背景:某项目slave数据库的延迟非常大

  1. 结合上iostat中 wsec/s 较大的数值,基本可以确定IO高负载的元凶是redo log的flush,而不是data page的flush


  1. 查看innodb log buffer状态
    1. mysql> show global status where variable_name in('Innodb_log_waits','Innodb_buffer_pool_wait_free');
    2. +------------------------------+-------+
    3. | Variable_name | Value |
    4. +------------------------------+-------+
    5. | Innodb_buffer_pool_wait_free | 0 |
    6. | Innodb_log_waits | 2560 | ####log buffer过小导致写日志等待数。单位是次。
    7. +------------------------------+-------+


加大log_buffer_pool与innodb_log_file_size的值,重启数据库,发现iowait降低,slave开始下降!



总结:优化io过高的几种原因:
1.是否是buffer pool过小导致的              参考文章:叶金荣--是什么导致磁盘io过高 http://mp.weixin.qq.com/s/sAGFo-h2GCBhad1r1cEWTg
2.是否是sql导致的
3.innodb_io_captiy对io稳定性的影响     http://blog.itpub.net/29096438/viewspace-2134208/
4.其它系统原因




推荐阅读:
  1. MySQL延迟问题和数据刷盘策略
  2. 分析MYSQL服务磁盘IO高问题及优化对策

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

猜你喜欢