mysql表故障

2180阅读 0评论2013-01-18 split_two
分类:Mysql/postgreSQL

故障现象:市场反应,企业可以连接数据交换平台,但是不能收发报文。服务器已经被市场人员reboot过了,问题依旧。

问题分析及处理过程:

1、通过公司的监控诊断工具,连接远程的数据交换平台来模拟接收和发送报文,发现接收方的确接收不到报文。

2、登录服务器查看tcp连接状态

netstat -ant | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a,S[a]}'

显示time_wait有3200,established有2300多

3、ulimit -a查看最大可打开文件数,均为默认的1024

4、查看平台的日志

5、经过分析是mysql数据库平台报文表文件损坏,导致操作平台报文表失败,和市场人员沟通后,准备修复此表

6、停止平台应用

7、停止mysql数据库

8、修复上述表的数据库文件

切换到数据库文件的当前路径,下面的table_name记得写你自己的表名

执行myisamchk -r table_name         十分钟后,修复结束,并提示读取文件第6行错误,此表大概几千万条记录

再执行myisamchk --safe-recover table_name    2分钟后完成修复,并修复成功

9、启动mysql

10、启动平台应用

11、使用监控工具,测试可以正常接收报文

12、通知市场验证问题是否解决 

13、市场确认问题解决

上一篇:nagios监控windows openmanage
下一篇:【原创】一次系统慢的反思