IT基地
用户登陆
我要注册
用户名或密码错误
登 陆
注 册
IT基地 >李蓝猫的博客 >我要发文
Mysql数据表一直显示【使用中】的修复方法
作者:李蓝猫   发布时间:2017-04-11 16:36:46   点击数:940

一、表损坏的原因分析(以下原因是导致mysql 表毁坏的常见原因):

1、 服务器突然断电导致数据文件损坏。 

2、 强制关机,没有先关闭mysql 服务。 

3、 mysqld 进程在写表时被杀掉。 

4、 使用myisamchk 的同时,mysqld 也在操作表。 

5、 磁盘故障。 

6、 服务器死机。 

7、 mysql 本身的bug 。

二、表损坏的症状

一个损坏的表的典型症状如下: 

1 、当在从表中选择数据之时,你得到如下错误: Incorrect key file for table: '...'. Try to repair it 

2 、查询不能在表中找到行或返回不完全的数据。 

3 、#144 Error: Table 'p' is marked as crashed and should be repaired 。 

4 、打开表失败: Can't open file: ‘×××.MYI' (errno: 145) 。

三、如何修复表?


方法1:重启动mysql,简单,一般会有效
方法2:运行SQL语句,登陆phpmyadmin,运行如下语句,多数可以决绝

CHECK TABLE `表名`; 
ANALYZE TABLE `表名`; 
REPAIR TABLE `表名`;

方法3:登陆phpmyadmin,首页有个“状态”标签,点击进去服务器选项卡下有个杀死进程的。
方法4:使用linux命令解决Mysql数据表一直显示使用中 
1.关闭mysql服务:找到mysql所在的文件夹,执行:varservice mysqld stop

1460962872792746.png

2.进入数据库所在文件夹:cd mysql/data
3.强制修复表:myisamchk -f 数据库名/数据表名.MYI

1460963267552301.png

1.开启mysql服务:找到mysql所在的文件夹,执行:

[root@localhost bin]# service mysqld start (5.0版本是mysqld)

[root@localhost bin]# service mysql start (5.5.7版本是mysql)

1460963502770379.png

本站部分数据来自软件的自动采集,仅用于学习交流,决不用于商用,如有侵犯您的合法权益,请联系我们删除。
发表技术文档,,记录个人生活,聚集意见领袖,众多IT精英,以我们的技术让开发更便捷。
IT基地版权所有,伪版必究 京ICP备17064610号-1
微信QQ空间QQ好友新浪微博FacebookTwitter