1.前言
现在在很多公司,其服务器中的硬盘大部分都由机械硬盘换成了SSD固态硬盘了,因为固态硬盘的读写速度远远超过机械硬盘的速度
2.Mysql之SSD优化
- 关闭double-write 双写是为了实现原子写出现的,先刷数据页到ibdata1,再刷脏页到数据文件中..而SSD本身实现了原子写,所以不再需要
- 关闭邻页刷脏 邻页刷脏是代表每次不光要刷脏页自己,还要查找相邻的符合要求(源码是一个去间)的脏页,目的是为了减少随机IO,但是消耗了时间,而随机IO在SSD并不存在,所以关闭
- 调整io-capation,每次刷新的脏页数量 来源于fio针对磁盘的压测 设置为磁盘的IOPS
- 调整innodb_flush_method为 o_dircet 数据文件的写入不再经过OS CACHE,记住这里是数据文件
- 增大redo logfile单个大小,(适合初始化实例),减少针对单位置的反复重写
- 调整linux的IO调度算法为noop-noop是FIFO算法的优化版,还会对相邻IO进行合并,本身不区分IO请求种类,默认IO性能不存在问题