在以下链接中
http://dev.mysql.com/doc/refman/5.1/en/innodb-parameters.html#sysvar_innodb_flush_method
它说:这个变量的不同值会对InnoDB性能产生显著的影响。例如,在一些InnoDB数据和日志文件位于SAN上的系统中,发现将innodb_flush_method设置为O_DIRECT可以使简单SELECT语句的性能降低3倍.。
为什么O_DIRECT可以减慢select语句的速度?
发布于 2010-05-04 07:16:05
O_DIRECT绕过操作系统的缓存系统。SAN可能是一个非常快速的存储系统,但通常它将位于网络链接的其他地方,并被代理/隐藏在其他各层后面。通过使用O_DIRECT (它消除了本地缓存),您可以强迫InnoDB每次直接访问存储系统。
发布于 2010-05-26 11:35:45
您确实需要对硬件上的刷新方法进行实验,看看什么最适合您。设置:
innodb_flush_method = O_DIRECT
在戴尔的PERC缓存控制器的RAID 1配置中配置15K RPM SAS驱动器的戴尔2950服务器上,我们的性能提高了15%。我们正在运行Ubuntu9.04股票内核,大部分工作都是mysql使用innodb。你的里程可能会不同。
https://stackoverflow.com/questions/2762697
复制相似问题