mysql 修改索引等待
·
在sesseion1
操作
select a.* ,b.*
from a inner join b on a.col01!=b.col01
where
order by a.col02 desc ,b.col02 desc , b.col03 desc;
session 2 :
create index idx01 a on (col01 desc);
或者
drop index idx01 on a ;
都会是一直等待的状态,通过show processlist查询为 2个session 的状态均为: Waiting for table metadata lock
原因分析:在查询中,会有表元数据的锁,而新增索引需要表元数据的锁,所以一直在等待
结论:
在select 语句未完成之前,索引操作是一直等待的状态。
更多推荐




所有评论(0)