当前位置:首页 > 短网址资讯 > 正文内容

一次MySQL5.7线上故障分析

www.ft12.com7年前 (2017-07-21)短网址资讯1843

坑都是踩出来的。


MySQL 5.7 GA已经有很长一段时间了,经过测试评估,在5.7.16版本release之后,我们开始在生产线上规模部署,一个多月相安无事,心中窃喜,在部署了大约200+实例之后,天有不测风云,故障开始接二连三。

某日,一个从库报OOM。该实例的innodb_buffer_pool_size = 40G,而系统内存是64G,怎么就能OOM了呢,先下线该实例,再看情况:


1、机器内存: 基本快要跪了

   total    used    free    shared    buffers    cached
Mem:    65808000    65492564    315436    0    1648    247284
-/+ buffers/cache: 65243632    564368
Swap:    2088952    2087852    1100

2、看谁是元凶:确认是mysqld

PID    USER    PR    NI    VIRT    RES    SHR S %CPU %MEM    TIME+  COMMAND    
28086 mysql    20    0 87.3g    61g 5192 S 21.2 97.7  28226:23 mysqld

3、看MySQL监控:

com_delete/innodb_rows_deleted : 29/9340
com_update/innodb_rows_updated : 155/9740
com_select/innodb_rows_selected : 299/39400

该业务正常情况下是不可能出现这么大的innodb_rows值的,先stop slave,com_delete/com_update/com_select的值变0,但是innodb_rows值并没有降低,什么!!!现在已经没有任何写入了,怎么可能,诡异了。

4、再看看LSN: 还在涨?


5、再看看是否有事务在回滚(此处感谢@张远 ^_^):

确实有线程在rollback,但是该实例也没有什么大事务,stop slave都已经好久了,为什么还在回滚呢?


6、pstack $mysqldpid看看线程都在干什么:

从下图能看出都是在compress_gtid_table()里,难道短网址和gtid compress有关系?

插入一段关于gtid compress的介绍: MySQL 5.7中新增了一个mysql.gtid_executed表,用于记录当前执行过的gtid,在binlog开启的情况下,当binlog retation的时候会唤醒一个内部线程对这个表的数据进行压缩合并。




7、看下mysql.gtid_executed表的情况:

果然是没有压缩,看来是在压缩这个表数据的时候出错了,然后产生了回滚操作。


8、经过对比,最后确认是这个参数引起的:

我们为了防止有DBA不小心在从库上执行SQL,给gtid_mode=on的复制模式留下隐患,将super_read_only设置成了on,为此,还特意修改了MHA的源码,以便检测和支持短网址的这个设置,结果人算不如天算,踩上了这个坑。将super_read_only 设置成0,当binlog retation后可以看到mysql.gtid_executed的compress恢复正常了,innodb_rows也正常了:



9、写在最后也是最重要的:


a) 参数的调整尽管已经解决了这个问题,但是更深层次的原因还没去找,希望有MySQL源码基础的同学,有兴趣来帮忙填坑的,请将简历砸过来: zouyu@didichuxing.com;

b) 还有一个MySQL5.7.16发生写入夯死的坑未填上,速来!^_^


扫描二维码推送至手机访问。

版权声明:本文由短链接发布,如需转载请注明出处。

本文链接:https://www.ft12.com/article_317.html

标签: MySQLBUG调试
分享给朋友:

相关文章

连内衣店、按摩馆都被大量直播 画面让人心惊

  近日,网络上出现多地学校教室、宿舍的直播画面,画面中人物的举动都较为清晰,且包含声音,一些当事人对直播并不知情。不仅是学校,一些直播的镜头还对准了游泳池、盲人按摩馆、酒店大堂、内衣店...  直播随意看:学校、游泳池、盲人按摩馆、酒店大...

他45岁成中国最富二当家,净资产超宗庆后、郭台铭,却异常低调!

在《福布斯》日前发布的《2017年华人富豪榜》上,已从腾讯退休3年的张志东,以84亿美元的净资产位列第19位,排名超过台湾的郭台铭、大陆的宗庆后,也是榜单前20位中唯一的“二当家”。而今年,他才不过45岁。作为腾讯第二号人物张志东,腾讯产品...

我作为程序员辣么穷的黑历史

我在十三、四岁的时候第一次真正进入编程这个领域。从十一岁开始我就一直对计算机非常感兴趣,但在十三岁之前并没有太多地涉足编程。那大约是五年前。我记得在中学玩过一个游戏:Runescape。很多时候游戏都会崩溃,并且会看到一个奇怪的包含外国文字...

智慧城市建设值得思考的三大趋势

智慧城市建设值得思考的三大趋势

智慧城市是一个跨产业、跨领域、跨组织、跨技术的概念,全球对才智城市的建设与发展都在处在理论到实践的探索阶段。才智城市的建设需求多部门、多组织的协同立异,由众多的聚焦某类问题解决的立异企业集合来一起推动。Amit Garg从投资人的角度给出了...

DHT 爬虫初步研究

一直想写一个种子搜索引擎,搜集资料开始写后遇到了一个难关:爬虫的效率太低,运行一天也爬不到一条消息,而且阿里云在我的程序开始运行后一天就无法远程登录,只能重启服务器。一度计划被搁置了下来,直到最近事情出现了转机,我找到了更好的爬虫原型,并且...

FT12短网址:给你的女朋友解释为什么随机播放歌曲并不随机

FT12短网址:给你的女朋友解释为什么随机播放歌曲并不随机

FT12短网址的小编在周末的时候开车带着女朋友出去玩。小编车里面随机播放着五月天的歌曲。当小编正沉浸在『得儿飘,得儿飘,得儿意的飘』中,幻想着自己是秋名山车神,突然,旁边的豆腐,哦不,女朋友说话了。诶,你车上的歌曲是随机播放的吗?和短网址的...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。