Mysql

MySQL:安全地殺死卡在“等待表元數據鎖定”中的事務

  • January 10, 2018

早上好/下午/晚上好。

我試圖將一列添加到具有數百萬行的表中。這是完整的查詢:

alter table date_tasks_mark add column noDuplicate int unsigned not null default 0

然而,它似乎被卡住了。

| 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

終止查詢對我來說是否安全,或者它會破壞我的表(它已經處於這種狀態大約半小時)?

是的,它是安全的。您的alter table查詢甚至還沒有開始。

但是,這waiting for table metadata lock意味著該表上有另一個事務在很長時間內執行,您寧願殺死那個事務來解決問題。(在此處閱讀更多資訊:8.11.4 元數據鎖定

要查找此事務,此執行緒可能會有所幫助:如何找到導致“等待表元數據鎖定”狀態的事務?

引用自:https://dba.stackexchange.com/questions/195018