Waiting for table metadata lock
生活随笔
收集整理的這篇文章主要介紹了
Waiting for table metadata lock
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
【問題描述】:Mysql5.6的主從環(huán)境,在主庫上添加字段始終添加不了,一直沒有返回值。
【排查分析】:
1、在測試環(huán)境上執(zhí)行沒有問題,很快就返回。因?yàn)閿?shù)據(jù)量不大,也就10w左右(線上也是10w左右)
2、在執(zhí)行alter語句時(shí),在另外的終端通過show processlist發(fā)現(xiàn) 有等待TML鎖
3、通過如下sql查線程ID
如果沒有返回值 ,使用下面的sql來查:
select i.trx_mysql_thread_id from information_schema.innodb_trx i,(select id, timefrominformation_schema.processlistwheretime = (select max(time)frominformation_schema.processlistwherestate = 'Waiting for table metadata lock'and substring(info, 1, 5) in ('alter' , 'optim', 'repai', 'lock ', 'drop ', 'creat'))) pwhere timestampdiff(second, i.trx_started, now()) > p.timeand i.trx_mysql_thread_id not in (connection_id(),p.id);根據(jù)返回的結(jié)果繼續(xù)查相關(guān)的session:
select * from information_schema.processlist where id=104018;
可以根據(jù)情況對該會(huì)話進(jìn)行處理。
轉(zhuǎn)載于:https://blog.51cto.com/zhaowl/2343516
超強(qiáng)干貨來襲 云風(fēng)專訪:近40年碼齡,通宵達(dá)旦的技術(shù)人生總結(jié)
以上是生活随笔為你收集整理的Waiting for table metadata lock的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络编程7_ multiprocessi
- 下一篇: Ivan Fedorov:用已知无法想象