Men*_*her 9 mysql innodb deadlock locking mysql-5.6
早上/下午/晚上好。
我试图在有几百万行的表中添加一列。这是完整的查询:
alter table date_tasks_mark add column noDuplicate int unsigned not null default 0
Run Code Online (Sandbox Code Playgroud)
不过好像卡住了。
| 28893 | root | localhost | database_name | Query | 10668 | Waiting for table metadata lock | alter table date_tasks_marks add column noDuplicate int unsigned not null default 0
Run Code Online (Sandbox Code Playgroud)
终止查询对我来说安全还是会破坏我的表(它已经处于这种状态大约半小时)?
tom*_*bom 10
是的,它很安全。您的alter table查询甚至还没有开始。
但是,这waiting for table metadata lock意味着,在该表上还有另一个事务长时间运行,您应该杀死那个事务来解决问题。(在此处阅读更多相关信息:8.11.4 元数据锁定)
要查找此事务,此线程可能会有所帮助:如何查找导致“等待表元数据锁定”状态的事务?