显示mysql myisam锁

当使用myisam存储引擎删除或重命名表时,我意识到它正在等待表元数据locking,但是,show full processlist不会显示有问题的查询。 任何想法?

 |  462 |  root |  xxx.xxx.xxx.xx:54658 |  mydb | 睡眠|  1162 |  |  NULL |
 |  465 |  root |  localhost |  mydb | 查询|  0 |  NULL | 显示完整的进程列表|
 |  466 |  root |  localhost |  mydb | 查询|  125 | 等待表元数据locking| 将表格mytable重命名为mytable_junk |

如果你正在使用MySQL 5.5, 那就有一个错误报告 。

如果事实上, 请点击这里查看元数据locking的解释 。 这是为了防止在交易过程中表格被DDL执行。

奇怪的是,你正在MyISAM表上得到这个。