用Navicat for mysql操作mysql数据库,其中一个表怎么也打不开,一直加载,还不能关闭。从网上搜索原因,主要是以下几个原因:
原因一:
表死锁,会出现这样的情况,锁不释放,无论多久都读取不了数据,一直加载中!
原因二:
表里面的数据量太大造成的。原因三:
网络慢,卡,数据不能传输。
经过分析,个人觉得是愿意一导致我的问题,所以,百度下用如下方式解决:
在navicat里右击数据库名称打开mysql的命令行,然后输入:
SHOW PROCESSLIST;
出现如下图,如果status列有lock字眼,那么通过Info状态就可以得出哪张表被锁了:
如果有被锁的表,那么在命令行输入(kill 后面的id是上图的第一列值):
KILL 10866;//后面的数字即时进程的ID把status带lock字眼的即时进程都删掉,表就可以打开了。
备注:各位看官可以从网上查查如何可以在mysql命令行里一下kill多个即时进程,据我所查是可以的,在这里我没有用到就不写上来了。