MySQL数据库表损坏解决办法

3721阅读 0评论2012-05-25 fengzhanhai
分类:Mysql/postgreSQL

过程处理:

1、早上登录统一信息平台发现IMU服务异常;

2检查相关进程发现mysqlweb应用服务均已消失;

3、告知主机维护人员请其帮忙查看服务器运行状况发现服务器在78号重启过。

4、经查看数据库及应用系统日志发现应用频繁打印如下错误信息:/gc_tech/tab_staff  is marked as crashed and should be repaired

5、通过分析日志发现由于服务器重启导致IMU数据库表tab_staff损坏;

6、重启mysql得到当前数据库存储路径并定位到该表对应的myi文件:tab_staff.MYI

重启后得到路径如下:

   /usr/local/mysql/data/gc_tech/tab_staff.MYI

5、以root账号切换到mysql程序部署路径:

  mysql安装路径如下:/usr/local/mysql/bin

6、执行以下mysql自带修复命令:

./myisamchk -c -r    /usr/local/mysql/data/gc_tech/tab_staff.MYI

返回以下信息则表示修复成功:

Data records: 12386

- Fixing index 1

- Fixing index 2

7、重启mysqlimu服务并检查应用恢复正常。

总结分析

服务器重启导致表损坏原因可能是在用户正在读数据或者写数据时服务器重启致使数据库的表损坏,建议维护人员需要重启服务器时需先停止相关应用后再做停机处理。

上一篇:开源搜索引擎Solr的快速搭建及集成到企业门户最佳实施方案
下一篇:linux脚本发送邮件 shell发送邮件