加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Mysql数据表一直显示使用中的修复方法

(2015-12-04 11:22:09)
标签:

mysql

it

使用中

分类: SQL
修复表是因为数据库丢失或损坏了,我们可以通过mysql自带的命令或一些工具进行修复从而使用表可以正常使用了,下文小编为各位介绍一些解决办法。


打开phpmyadmin选择数据库查看,果然有3个表显示为“使用中”。勾选之后进行“修复表”,出现错误提示不能被修复。

于是接着从“分析表”、“优化表”开始,均告失败。失败信息第一条:can't create new temp file


1.表损坏的原因分析

以下原因是导致mysql 表毁坏的常见原因: 
1、 服务器突然断电导致数据文件损坏。 
2、 强制关机,没有先关闭mysql 服务。 
3、 mysqld 进程在写表时被杀掉。 
4、 使用myisamchk 的同时,mysqld 也在操作表。 
5、 磁盘故障。 
6、 服务器死机。 
7、 mysql 本身的bug 。

2.表损坏的症状

一个损坏的表的典型症状如下: 
1 、当在从表中选择数据之时,你得到如下错误: 
Incorrect key file for table: '...'. Try to repair it 
2 、查询不能在表中找到行或返回不完全的数据。 
3 、Error: Table 'p' is marked as crashed and should be repaired 。 
4 、打开表失败: Can't open file: ‘×××.MYI' (errno: 145) 。

google解决方案:强制修复 myisamchk -r -f ****.MYI,问题依旧

方法一:

重启动mysql,简单,一般会有效。

方法二:

运行SQL语句,登陆phpmyadmin,运行如下语句,多数可以决绝。 

1
2
3
4
5
CHECK TABLE `table1`; 
 
ANALYZE TABLE `table1`; 
 
REPAIR TABLE `table1`;

方法三:
 
登陆phpmyadmin,首页有个“状态”标签,点击进去服务器选项卡下有个杀死进程的。

方法四:

使用linux命令解决Mysql数据表一直显示使用中。以lampp服务器集成包为例,数据库显示“使用中”,操作命令如下: 

1
2
3
4
5
6
7
/opt/lampp/lampp stopmysql 
 
cd /opt/lampp/var/mysql/ 
 
/opt/lampp/bin/myisamchk -f miningplants/wp_options.MYI (数据库名、数据表名) 
 
/opt/lampp/lampp startmysql

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有