mysql出现“Incorrect key file for table”处理方法
最近服务器出现问题,导致公司的网站数据丢了很多。智软的也丢了不少。这几天一直都在忙这 修复数据。
今天在恢复一个客户数据的时候。发现了一贯问题。有多个表损坏了。因为都是直接把表复制进去的。然后就出现了这个问题问题 如图:
dedecms Error Warnin!
Error infos: Incorrect key file for table 'it_member_snsmsg'; try to repair it
图片1
这个是说 表坏掉了。。
修复方法如上:
下面就是具体的操作方法:
在DEDE的后台SQL操作中直接输入
复制代码 代码如下:
repair table tablename;
REPAIR TABLE tablename USE_FRM
把 tablename换成表名就可以了!但是修复了 数据会丢掉。只能在把数据导入进去。
如果在服务器上操作我们可以使用 Navicat Lite for MySQL软件或者 用批处理
复制代码 代码如下:
cmd /k myisamchk --recover dede_archives
linux服务器出现了mysql错误的解决方法:
mysql> select * from Filter limit 4;
ERROR 1034 (HY000): Incorrect key file for table ‘Filter'; try to repair it
repair table修复后还是没有用:
mysql> repair table Filter;
+—————+——–+———-+———————————————————+
| Table | Op | Msg_type | Msg_text |
+—————+——–+———-+———————————————————+
| pfsmtp.Filter | repair | Error | Incorrect key file for table ‘Filter'; try to repair it |
| pfsmtp.Filter | repair | error | Corrupt |
退出mysql,执行如下修复动作:
myisamchk -of /mail/var/mysql/smtp/Filter.MYI
myisamchk -r /mail/var/mysql/smtp/Filter.MYI
myisamchk safe-recover /mail/var/mysql/smtp/Filter.MYI
再重启mysql后修复正常了。
下一篇:在SQL中获取一个长字符串中某个字符串出现次数的实现方法