MySQL DDL Waiting for table metadata lock 解決
原因一:表上有執行中的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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Waiting for table metadata lockAI
- MySQL新增索引偶遇waiting for table metadata lockMySql索引AI
- create table if not exists Waiting for table metadata lockAI
- MySQL 5.6 drop database時,table metadata lock等待MySqlDatabase
- 【Mysql】metadata lock鎖MySql
- MYSQL 鎖:metadata lockMySql
- MySQL 5.6 metadata lock 原始碼解讀MySql原始碼
- 【MySQL】MetaData Lock 之一MySql
- 【MySQL】MetaData Lock 之二MySql
- 【MySQL】MetaData Lock 之三MySql
- MySQL表結構變更引起的Metadata Lock|如何定位DDL被阻塞MySql
- MySQL:Analyze table導致'waiting for table flush'MySqlAI
- mysql觀測METADATA LOCK(MDL)鎖MySql
- mysql metadata lock原理與實現MySql
- MySQL5.7 Waiting FOR TABLE FLUSHMySqlAI
- MySQL5.7 Waiting for global read lockMySqlAI
- 【MySQL】select for update 的Row Lock 與Table LockMySql
- dbms_metadata.get_ddl
- Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist解決辦法ErrorMySql
- innodb_lock_monitor解決mysql死鎖MySql
- 利用dbms_metadata.get_ddl檢視DDL語句
- 用dbms_metadata.get_ddl獲取ddl語句
- MySQL:簡單記錄一下Waiting for commit lockMySqlAIMIT
- dbms_metadata.get_ddl的妙用
- dbms_metadata.get_ddl學習
- dbms_metadata.get_ddl的使用
- 關於dbms_metadata.get_ddl
- dbms_metadata.get_ddl的用法
- mysql metadata lock後設資料鎖之鎖狀態lock_status流轉圖MySql
- MYSQL METADATA LOCK(MDL LOCK)學習(1) 理論知識和加鎖型別測試MySql型別
- 解決rpmdb: Lock table is out of available locker entries問題。AI
- Oracle利用dbms_metadata.get_ddl檢視DDL語句Oracle
- 【Mysql】從庫大量select堵塞,Waiting for table flush 狀態MySqlAI
- DBMS_METADATA.GET_DDL獲取使用者ddl指令碼指令碼
- 使用DBMS_METADATA.GET_DDL獲取物件的DDL指令碼物件指令碼
- dbms_metadata.get_ddl詳細用法
- oracle dbms_metadata 獲取ddl語句Oracle
- mysql, Lock wait timeout exceeded; try restarting 解決MySqlAIREST