我有大约16个网站在一个CentOS专用,我有一些问题的高交通时间,这似乎是一个高磁盘I/O活动造成普遍的放缓。
我已经安装在顶层,这就是我在底部看到的(服务器已经重新启动,这就是为什么值如此之低):
*** system and process activity since boot ***
PID RDDSK WRDSK WCANCL DSK CMD 1/18
2176 1.7G 7.3G 854.4M 39 mysqld
671 1248K 3.0G 0K 13 flush-8:0
566 0K 1.1G 0K 5 jbd2/sda2-8
2401 124.2M 529.1M 22408K 3 crond
2032 2.2G 502.0M 0K 12 nginx
2360 425.8M 115.3M 4188K 2 httpd
刷新-8:0和jbd2 2/sda2 2-8是我在IO>列上使用99%使用iotop的进程,它们是在hdd上编写最多的进程(在mysql之后)。从我在google中看到的情况来看,这可能是一些与ext4相关的错误造成的,当前的内核是:
Linux srvr.com 2.6.32-71.el6.x86_64 #1 SMP Mon 06 27 19:49:27 BST 2011 x86_64 GNU/Linux
我要求主机支持更新内核,他们尝试了,但是现在他们说服务器不会用新安装的内核启动,他们不得不回到以前的版本,他们没有太大的帮助。
有人知道如何解决由刷新-8:0和jbd2 2/sda2 2-8进程造成的磁盘使用率高的问题吗?
发布于 2014-10-16 19:23:53
你还没有给我们足够的信息告诉我,但我的第一个预感是,你过度使用RAM,和搅动交换。在顶层,向我们展示内存列表(按m),包括标题部分。
别怪你的支持。您的内核和ext4不太可能是问题所在。
发布于 2015-01-25 22:46:32
flush-8:0
是内核线程,用于将dirty
RAM缓冲区和/或swap
刷新到磁盘,jbd2/sda2-8
是内核线程,用于文件系统上的日志记录--它们是密集的IO结果,而不是问题的原因。
更多的问题是mysql对磁盘的大量使用。当JBD正在使用时-看起来多个写操作正在进行中。
检查哪些文件被mysql更改,或者检查它的日志、DB使用情况、表优化,以及mysql守护进程是否配置为尽可能多地使用RAM进行缓存。
您可以将mysqltuner用于通用建议。
如果写操作将保持不变,则可能需要提高磁盘速度以获得更多IOPS。
检查哪些文件写得更频繁。不仅MB/s速率很重要,您还可以编写20 MB,但消耗的IO操作比其他200 MB的IO操作要多。
发布于 2012-12-07 22:34:02
显然mysql不喜欢ext4。升级内核或将mysql数据目录更改为ext3分区应该可以解决这个问题。http://ubuntuforums.org/showthread.php?t=1313834&page=2
https://serverfault.com/questions/326217
复制相似问题