MySQL5.7 Waiting FOR TABLE FLUSH
系统不能使用,数据库上99%的会话等待是Waiting FOR TABLE FLUSH,找到等待时间最长的会话kill,系统恢复正常。是什么原因造成的呢?
日志分析:
Time: 2018-12-15T10:45:50.116723+08:00
User@Host: gg[gg] @ [10.92.221.131] Id: 9435656
Query_time: 58475.741298 Lock_time: 0.000561 Rows_sent: 0 Rows_examined: 32858598152
SET TIMESTAMP=1544841950;
CALL PRO_COUNT_XXXXX
();
Time: 2018-12-15T10:45:50.128296+08:00
User@Host: root[root] @ [10.92.221.125] Id: 9440022
Query_time: 31548.800341 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
SET TIMESTAMP=1544841950;
FLUSH /*!40101 LOCAL */ TABLES;
从日志上分析猜测是flush tables跟慢的SQL相互影响导致的问题。因为flush table会关闭所有的表,包括正在使用的表,并且会flush query cache,正在执行的SQL是正在打开表,所以flush tables被堵塞,它进而堵塞了后面的查询。实验验证:
session1:
INSERT INTO test1 SELECT a.* FROM test a,test b; #test表是一张几十万数据的表
session2:
FLUSH TABLES;
session3:
SELECT * FROM test;
session4:
SELECT * FROM test;
session5:
SHOW PROCESSLIST
Id USER HOST db Command TIME State Info
1 root localhost:48463 test QUERY 48 Waiting FOR TABLE FLUSH FLUSH TABLES 2 root localhost:48480 test SLEEP 124 (NULL) 3 root localhost:48490 test QUERY 73 Sending DATA INSERT INTO test1 SELECT a.* FROM test a,test b 4 root localhost:48491 test QUERY 37 Waiting FOR TABLE FLUSH SELECT * FROM test 6 root localhost:48496 test QUERY 0 init SHOW PROCESSLIST 8 root localhost:48504 test QUERY 8 Waiting FOR TABLE FLUSH SELECT * FROM test
MySQL5.7 Waiting FOR TABLE FLUSH相关推荐
- mysql wait for flush,Mysql线程大量Wating For table flush问题分析
早上8点种线上服务器大量报出以下异常 java.sql.SQLTransientConnectionException: MyHikariCP - Connection is not availabl ...
- 【MySQL经典案例分析】 Waiting for table metadata lock
本文由云+社区发表 一. 问题是这样来的 2018年某个周末,接到连续数据库的告警,告警信息如下: 二. 苦逼的探索过程 1.总体的思路 看到too many connection的报错信息,基本 ...
- Waiting for table metadata lock
[问题描述]:Mysql5.6的主从环境,在主库上添加字段始终添加不了,一直没有返回值. [排查分析]: 1.在测试环境上执行没有问题,很快就返回.因为数据量不大,也就10w左右(线上也是10w左右) ...
- avue里面的select怎么设置默认值_mysql大量的waiting for table level lock怎么办
导读 遇到经典的MDL等待场景时怎么分析和处理.本文节选自叶金荣有赞<乱弹MySQL>专栏. MySQL从5.5版本开始,新增元数据锁,也就是metadata lock,简称MDL锁. M ...
- 架构师技能6:深入MySQL原理-Waiting for table metadata lock引发系统崩溃
开篇语录:以架构师的能力标准去分析每个问题,过后由表及里分析问题的本质,复盘总结经验,并把总结内容记录下来.当你解决各种各样的问题,也就积累了丰富的解决问题的经验,解决问题的能力也将自然得到极大的提升 ...
- mysql出现waiting_MySQL出现Waiting for table metadata lock的原因以及解决方法
MDL简述 为了在并发环境下维护表元数据的数据一致性,在表上有活动事务(显式或隐式)的时候,不可以对元数据进行写入操作.因此从MySQL5.5版本开始引入了MDL锁(metadata lock), ...
- java连接mysql执行ddl_Mysql 执行DDL导致Waiting for table metadata lock
MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景.而且,一旦alter table TableA的操作停滞在Wa ...
- MySQL出现Waiting for table metadata lock的原因以及解决方法
MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景.而且,一旦alter table TableA的操作停滞在Wa ...
- 【MySQL】MySQL出现Waiting for table metadata lock的原因、解决方法
Waiting for table metadata lock MySQL在进行alter table等DDL操作时,有时会出现Waiting for table metadata lock的等待场景 ...
最新文章
- B站崩了上热搜,A站跟着躺枪!微信、支付宝:跟我们比起来这是小问题
- 37、iamgeview 图层叠加
- 创建,修改Table格式
- ACM POJ 2723 Get Luffy Out(2-SAT入门)
- Entity Framework表拆分
- 特殊的栈GetMin
- kodi pvr 不能安装_Kodi看电视直播教程 安装PVR IPTV Simple Client播放m3u8直播源
- MySQL如何使用.sql后缀的文件
- jedate选中日期后关闭弹层_jeDate 插件修改日期或时间后无法触发change事件。
- 详细解说Java 技术的新纪元
- 可视化神器Plotly玩转直方图
- 老徐和阿珍的故事:CAP是什么?超级爱放P吗?
- 网站SEO过程中的死链处理
- python调用pyd失效
- 百度地图API(WEB端/JavaScript API)--实际运用与扩展
- 手机产品设计之用户引导
- 计算机五笔字型编码方法,无字型五笔编码计算机中文输入法
- python_MOD13A3_NDVI 最大合成
- matlab怎么输入二维数组,MATLAB二维数组(矩阵)的创建
- vue实现一个日历切换功能
热门文章
- FSL——FDT数据统计处理TBSS
- 系统集成项目管理工程师—案例分析重点记忆内容
- 钢之炼金术师之去门的那一边铃声 钢之炼金术师之去门的那一边...
- 日加满网迷专属饮品“劲维”嗨爆新浪游戏ChinaJoy
- #今日说码栏目# 第二十三集 动画,旅行的热气球
- 微信二次开发需要多少钱,不得不说的内幕!
- Github语义分割框架(包含Unet,Unet++,MAnet等)
- 速收藏 超系统的大数据学习路线
- 深度学习提高trick小技巧
- Git教程:! [rejected] master -> master (fetch first)解决办法