首页 » MySQL »

解决mysql数据库报错Table ‘xxx’is marked as crashed and last (automatic) repair failed

中午起床后开博客,然后后台使用clean up清理垃圾,出现数据库表崩溃。。。
报错
Table ‘xxx’is marked as crashed and last (automatic) repair failed
xxx为你数据库名称

数据的索引全部没了,原因不明,在phpmyadmin后台使用修复功能不成功,那就手动修复试试。。。

手动修复步骤
ssh连接到vps
为了稳妥起见,先cp一份数据库文件以防万一

cd /usr/local/mysql/var/
cp xxx xxxbackup

错误提示omitting directory ‘xxx’
原因为该文件夹下有子文件夹,添加递归参数 -r后就好了

cp -r xxx xxxbackup

关闭mysql服务

service mysql stop

打开xxx数据库文件夹

cd /usr/local/mysql/var/xxx

修复表索引文件(注意:使用递归参数-r、通配符*的作用是批量修复所有.myi结尾的文件)

myisamchk -r *.MYI

若不成功试试强行修复(我没用强行修复。。。)

myisamchk -r -f *.MYI

本文标签:

相关文章推荐

转载请保留,转载自:老牛博客
原文地址 http://xiaohost.com/1273.html

发表评论