MySQL 2003 [ERROR] /usr/sbin/mysqld: Incorrect key file for table './keyword_search/keyword.MYI'; try to repair it

今天对一个有四百多万数据的表增加一个功能时,当做数据插入时,显示没有插入,到Linux的log下面查看了发现下面这条错误信息

在stacOver上面找到这句:

存储引擎(MyISAM)支持修复表。你应该可以修复它。

如果修复失败,则表示表已损坏,您别无选择,只能从备份中恢复。

如果你有其他的系统(如非生产相同的软件版本和模式)与一个相同的表,那么你可以修复它一些hackery(复制一个MYI文件,然后修复)。

本质上,诀窍是避免首先破坏表。这意味着始终关闭你的数据库干净,从来没有崩溃,从来没有硬件或电力问题。在实践中,这不太可能,所以如果耐用性很重要,您可能需要考虑更安全的存储引擎。

然后我通过一句sql解决了问题:

repaire table table_name

 

posted @ 2018-01-22 19:11  Ryan_zheng  阅读(243)  评论(0编辑  收藏  举报