[MySQL]快速解决"is marked as crashed and should be repaired"故障
快速解决“is marked as crashed and should be repaired”故障
细心的朋友可能已经察觉到前几天本Blog出现不稳定的状况,事情起因是 Windows Server 2008 Web 运行异常的慢,明显感觉是 CPU 占用率高,之后对系统进行了优化并对相关服务进行了升级(中间还遇到了灾难性的故障,后篇日志会单独向大家介绍分享经验),其中就包括 MySQL,因为一直以来 MySQL 都采用的手工安装,这次升级还是如此,由于系统响应速度慢所以此次升级将 my.ini 也进行了修改采用了 my-small.ini 作为蓝本,以缓解内存占用的问题。之后运行了半天发现速度正常便开放了 Blog,第二天上午再次打开 Blog 提示”is marked as crashed and should be repaired“故障,要求重新安装 Blog!(太悲剧了!)
在网上查找了解决办法,看来很多 Bo-Blog 用户都有遇到这个问题,回忆起过去也曾遇到过此故障。而且之前也是使用的 my-small.ini 作为配置文件蓝本,早期采用的解决办法非常繁琐,而且稍有不慎就只能回档到过去的备份,损失将会非常大。过去1年未发生此类故障貌似是跟当时使用了 my-large.ini有关,因为当时增加了虚拟服务器的内存故使用了 large 配置。而造成”is marked as crashed and should be repaired“故障的主要原因加之网上现有资料分析,应该与内存有很大关系。
为了不冒失修复,故采取保守做法,我们知道 MySQL 一个高效的管理工具便是 PhpMyAdmin,而在该管理软件中就包含了对表的检查、分析、修复、优化功能,比起网上提供的含糊命令行来说更安全更简便。
通过实践,在使用检查表功能后确实发现了问题,之后使用修复功能进行了修复,反馈结果每个表都已经 ok,再执行一次优化,重新测试访问网站终于恢复了正常。一场灾难就此避免……