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

一次MySQL5.7线上故障分析

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

坑都是踩出来的。


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调试
分享给朋友:

相关文章

分享6款好用的WordPress插件,让你网站具有短网址跳转功能

分享6款好用的WordPress插件,让你网站具有短网址跳转功能

啥是跳转连接我想大家也知道吧?就是像微博的短网址相同,比如翻开ft12.ocm/xxx  实际是跳转到其它网站页面。那么啥情况下跳转连接呢?运用短网址,坚持连接一致美观性。削减页面权重丢失。躲藏一些短链接(比如推行链接、taoba...

电子支付与现金支付的区别---FT12短网址

前不久附近那家移动营业厅取消了现金充值业务,这让我这个倾向于现金(人民币)消费的人冲话费更加麻烦了。每次跑到便利店找店老板用微信给我手机冲话费(我给他现金),老板有时不在碰到老板娘都不会冲,手机停机属正常现象。借FT12短网址发个牢骚:名人...

2017年哥大毕业典礼演讲之李开复:内心比大脑重要

2017年哥大毕业典礼演讲之李开复:内心比大脑重要

5月15日,创新工场创始人兼CEO、人工智能工程院院长李开复博士作为特邀嘉宾,在纽约哥伦比亚大学工程学院向2017届结业生们宣告了题为《工程师的人工智能银河系周游指南》结业讲演。作为哥大83届结业生,他获益于这所大学年青、活泼、新锐、自在的...

校园贷后又现整容贷,校园金融到底怎么了?

继校园贷引发的悲剧被媒体大肆报道后,整容贷又被推到舆论的风口浪尖。FT12短网址的小编奉劝各位爱美的同学,还是要量力而为呀!近年来,在互联网金融的强势推动下,我国的消费贷款迎来爆发式的增长。数据显示,2008年到2016年,我国消费性贷款余...

软件架构设计中的五视图方法论

软件架构设计中的五视图方法论

1.每个人都可以做成为架构规划师不明白软件的和刚入行的大家一听到架构规划,都认为是十分的高大上课题,是一个遥不行及的范畴,一般人是不能做的。听起来云里雾里的,第一印象除了来自微软,阿里这些NB的公司里面的人别的的都不能做出架构似的,这是一种...

短网址网站对每条短链接安全性的检测方法

短网址站,顾名思义就是把长网址缩短成很短的短链接并提供跳转服务。当用户访问短链接时,短网址站会检索数据库中此条短链接对应的真实网址,并快速跳转到真实的长网址。世界本来就是一片祥和,但是总有一些不法分子利用短链接来隐藏真实网址,然后群发恶意网...

发表评论

访客

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