MySQL DDL Waiting for table metadata lock 解決

G8bao7發表於2021-09-03

原因一:表上有執行中的sql(包含:讀、寫)

  show processlist  檢視錶對應的PROCESSLIST_ID


原因二:看不到執行中的sql

    開啟事務

    執行sql (無論是否執行成功)

   未提交事務

    

處理方法:檢視導致阻塞的sql的  PROCESSLIST_ID,kill

    SELECT 

  t.PROCESSLIST_ID, c.* 

FROM

  performance_schema.events_statements_current c,

  performance_schema.threads t 

WHERE c.current_schema = '庫名' AND c.sql_text LIKE "%表名%" 

  AND c.THREAD_ID = t.THREAD_ID;

  

 kill  $PROCESSLIST_ID


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26250550/viewspace-2790328/,如需轉載,請註明出處,否則將追究法律責任。

相關文章