修复表是因为数据库丢失或损坏了,我们可以通过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,运行如下语句,多数可以决绝.
- CHECKTABLE`table1`;
- ANALYZETABLE`table1`;
- REPAIRTABLE`table1`;
方法三:登陆phpmyadmin,首页有个“状态”标签,点击进去服务器选项卡下有个杀死进程的.
方法四:使用linux命令解决Mysql数据表一直显示使用中,以lampp服务器集成包为例,数据库显示“使用中”,操作命令如下:
- /opt/lampp/lamppstopmysql
- cd/opt/lampp/var/mysql/
- /opt/lampp/bin/myisamchk-fminingplants/wp_options.MYI(数据库名、数据表名)
- /opt/lampp/lamppstartmysql