30
2020
03

MySQL出现Waiting for table metadata lock的解决方法

# 0x01 长事物运行,阻塞DDL,继而阻塞所有同表的后续操作
show processlist
# kill掉死锁进程

#0x02 未提交事物,阻塞DDL,继而阻塞所有同表的后续操作
select concat('kill ',trx_mysql_thread_id,';') from information_schema.innodb_trx;
# kill掉查出的进程

# 0x03 通过show processlist看不到TableA上有任何操作
# 在information_schema.innodb_trx中也没有任何进行中的事务
select * from performance_schema.events_statements_current;
# kill掉查出的进程


« 上一篇 下一篇 »

发表评论:

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