0、导读
有个MySQL服务器的磁盘I/O总有过高报警,怎么回事?
1、问题
我的朋友小明,TA有个MySQL服务器最近总是报告磁盘I/O非常高,想着我这有免费的不用白不用的企业技术服务(TA自己这么想的),就找我帮忙给把把脉。
作为一个经验丰富(踩坑不断)的DBA,出现这种问题,一般来说,磁盘I/O很高无非是下面几个原因引起:
磁盘子系统设备性能差,或采用ext2/ext3之类文件系统,或采用cfq之类的io scheduler,所以IOPS提上不去;
SQL效率不高,比如没有索引,或者一次性读取大量数据,所以需要更多的I/O;
可用内存太小,内存中能缓存/缓冲的数据不多,所以需要更多的I/O。