metadata lock不光是应用于表的层面,同时也应用于schema, triiger,scheduled,function等层面。...那么接下来的问题是,metadata lock的锁会在什么时候在MYSQL 中工作的问题,
1 创建或删除索引
2 修改表结构
3 在对表进行optimize table , repair table...,delete table , table lock 生效时,这些都触发了metadata lock
select concat('kill ',i.trx_mysql_thread_id,';')...where error_name IN ('ER_LOCK_WAIT_TIMEOUT','ER_LOCK_DEADLOCK','ER_LOCK_TABLE_FULL')\G
在这个表里面分别有三个记录与我们日常所有关的方向...> 0 and error_name in ('ER_LOCK_WAIT_TIMEOUT','ER_LOCK_DEADLOCK','ER_LOCK_TABLE_FULL');
上面的语句可以发现你最后一次产生查询问题的账号以及问题的原因