记一次mysql磁盘io高的问题排查

记一次mysql磁盘io高的问题排查,第1张

现象是,系统里的java连接mysql超时了,

于是去mysql的机器,查看/var/log/messages日志,查对应的时间点的情况

发现mysql被阻塞了blocked for more than 120 seconds,mysql的io非常之高,用top查看系统的负载也到达了50的样子

用mpstat查看cpu情况

好明显,都在等io

用iostat查看io情况,%util的值,一直在80%,99%之间变化

以为磁盘有问题,用dd测下速看看

从上面的结果看,也还好,没问题

以为可能磁盘有坏道,用下面命令也扫了一遍,没问题

结果也没有坏的块,这个过程,很耗时。

用show processlist命令查看mysql正在忙着什么,一看,也没什么任务在执行的

想看看mysql,研究写哪个文件时,最耗时的

从上面结果来看,xxl_job是最耗时的。知道点眉目了,因为公司的定时任务是用的xxljob,定时任务里,有每几秒执行的任务,我猜它的日志记录一定很大,于是查看一下

我的天,这个表的记录有千万!!!这些记录,没做定时任务来清理,由于都是一些没用的记录,所以这个表的数据我全清了

清了之后,再用iostat查看

%util一下子就降下来了,用iotop查看mysql进程的io也下降了

cpu的iowait也下降了

定义一个事件,让mysql定时清理30天前的日志记录

记录一下,希望对有需要的朋友也起一点提示

就是光盘或光驱的问题!

一般出现A:\GHOSTERR.TXT错误有以下几种情况:

1.ISO文件正确或者ISO下载不完整,无论什么方式下载一定要校验MD5码

2.光盘质量:因购买光盘或者刻录盘质量有问题而导致恢复失败

3.光驱质量:因为光区激光头老化读盘能力下降而导致恢复失败

4.刻录机:因为刻录机刻录质量不好或老化导致刻出的盘质量有问题而导致恢复失败

5.刻录方式:因刻录速度过快导致光盘不好读,建议刻录时选择16X/24X速度一次刻录

6.超刻:因超过刻录盘容量而导致部分数据不完全引起的恢复失败,一般在680M内适宜

7.硬盘有坏道:因为坏道导致GHOST无法写入

8.硬盘问题:完整的格式化一遍C盘,不要加Q(例:format c:)

9.硬盘没有盘符:因病毒或者其它以外导致的分区表丢失引起的恢复失败

10.超频:因为超频不稳定导致的恢复失败

如果排除以上问题,仍读盘错误,则可能是其它硬件问题.一个完整的硬件系统由许多部件组成,它们是一个有机的整体.如果某个关键部件品质不稳定,则整机就运行不稳定.在这样的系统里运行Ghost,自然会出错.按经验,首先应该怀疑内存,应更换内存试试.双条内存的兼容性.其次,检查主板,硬盘(及其数据线),再留意一下CPU的发热量是否正常.由于每个人都有自己的经验和方法,这里仅点到为止.

很多品牌机上就存在这个问题,在主分区之前隐藏一个厂商安装好的分区用于整机系统检测的,因此在品牌机上进行GHOST时应将注意这个问题.

天天开心!!!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7669833.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-08
下一篇 2023-04-08

发表评论

登录后才能评论

评论列表(0条)

保存