首頁  >  文章  >  資料庫  >  mysql table is marked as crashed and last (automatic?) repai

mysql table is marked as crashed and last (automatic?) repai

WBOY
WBOY原創
2016-06-07 15:40:311154瀏覽

1.同事的服务器在mysqldump备份的时候报错了 这个原因是myisam的表数据太多,在某个时刻, 存放数据的这个MyISAM表数据急速长大. 比如一些log表, 当硬盘写满了.这个时候还在继续写.然后这个表就会lock掉; 或者是mysiam的存储表的文件tbl_name.MYI 损坏了 表现

1.同事的服务器在mysqldump备份的时候报错了

这个原因是myisam的表数据太多,在某个时刻, 存放数据的这个MyISAM表数据急速长大. 比如一些log表, 当硬盘写满了.这个时候还在继续写.然后这个表就会lock掉;

或者是mysiam的存储表的文件tbl_name.MYI 损坏了

表现在你用phpmyadmin打开这个数据库的时候. 该MyISAM表的下面几个字段显示in use.

Rows Type Collation Size
in use

使用mysqldump导出,报错XXX table is marked as crashed and last (automatic?) repair failed.


2. 解决办法.

找到mysql的数据库存放的文件夹,这个可以去mysql的配置文件 my.cnf (linux)  my.ini(windows)里面找datadir 关键字,后面的就是路径

找到对应的数据库文件夹,进去后.在该数据库文件夹下执行, 是你想要修复的表名,

#myisamchk -r


如果这样还是不能解决, 停掉mysql,然后

#myisamchk -r -v -f


参考

http://dev.mysql.com/doc/refman/5.0/en/myisam-repair.html



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn