我有一个MySQL数据库服务器运行在Ubuntu 12.10 64GB内存,2×3 TB SATA 6 Gb / s硬盘7200转和软件RAID 1和英特尔酷睿i7-3930K。
数据库服务器通过本地networking使用专用1 GBit以太网卡访问。
该数据库大约50 GB,是复制设置中的主数据库。
国际海事组织,有两个问题,导致MySQL查询缓慢:
top显示大约95%的系统处于空闲状态,<1%被使用5%正在等待(见下面的截图) 
iotop --only显示大部分磁盘IO是由jdb2 / md2-8生成的,而不是由mysqld生成 – 所以mysqld不应该成为问题 – 但为什么jdb2 / md2-8使用了这么多的资源? 
cat /proc/mdstat输出如下内容: 
我的问题是:
是什么导致了MySQL性能下降?
这是爱荷华州吗? 什么导致爱荷华州?
它是RAID 1 – 它是用过的硬盘吗?
任何帮助是极大的赞赏!
你正在运行一个日志大量的数据库,就在那里最慢的磁盘。 你在jive2上看到如此之高的iowaits的原因是因为在把ext4日志写在磁盘上的时候很难
要么将磁盘更换为可以跟上的东西(可以想起SSD,所有具有电池caching的常规SAS磁盘都可以工作)和/或开始调整。 当涉及SQL环境中的文件系统调优时,有大量的文档。
一个好的起点是: http : //dev.mysql.com/doc/refman/5.0/en/disk-issues.html
升级到MySQL 5.7后,我遇到了这个问题。
设置“sync_binlog = 0”为我固定。 MySQL在5.7中将默认值从0更改为1。