MySQL出现"Waiting for table metadata lock"异常的解决方法
作者:OpenWorld
时间:2023-05-08
来源:正软商城
浏览:3
1.出现原因当对某个表执行DDL语句时,将会自动给此表加上mdl元数据write锁,直到事务提交才会释放。此锁的作用是为了保护表结构的完整性、元数据的一致性。2.处理方式模式一下生产环境如下图所示:sessionA开启了一个事务并且执行DQL此时sessionB需要对该表的两个字段添加全文索引执行后发现一直卡主查看相关的进程列表发现一直在等待获取mdl元数据锁select*frominformation_schema.processlistwhereinfolike'%altertable`bas
本文目录
1. 出现原因
当对某个表执行DDL 语句时,将会自动给此表加上 mdl 元数据write 锁,直到事务提交才会释放。此锁的作用是为了保护 表结构的完整性、元数据的一致性 。
2. 处理方式
模式一下生产环境 如下图所示 : session A 开启了一个事务 并且执行DQL

此时 session B 需要对该表的两个字段添加全文索引

执行后发现一直卡主

查看相关的进程列表 发现一直在等待获取 mdl 元数据锁
select * from information_schema.processlist where info like '%alter table `bas_business_type_text` %'

查看表锁情况 可以看到读写锁互斥了
SELECT * FROM sys.schema_table_lock_waits

据提示执行 kill 11

可以看到session B 立马执行成功

作者最新文章
PDF图片太多怎么批量压缩?PDF文档如何压缩变小?
2026-10-27 11:48
花4700元买RTX 5070:收到却是一堆20年前的电子垃圾!
2026-10-26 16:25
Aperty人像精修指南:去除面部红晕斑点与调整阴影
2026-10-22 21:53
即梦AI怎么导出到剪映继续剪辑?
2026-10-22 19:49
PDF转TXT小说怎么不乱码?手机PDF转TXT用哪个?
2026-10-17 16:32
下一篇:
Java怎么实现判空
热门文章
更多
精品专题
更多
Mac软件
更多
火山引擎 网页版
Windows/ macOS/ Linux
火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。
















