innodb是否有任何配置选项可以提高SSD驱动器的性能?

时间:2016-11-22 01:56:26

标签: mysql innodb database-performance

InnoDB通常假设使用主轴硬盘来存储数据,因此它尽可能地减少随机访问,并尽可能选择顺序访问。如今,生产中的许多MySQL实例都使用SSD闪存驱动器,因此这些设计决策的好处消失了,可能会带来一些开销。

InnoDB的当前发展是否考虑到了这一点?是否有用于调整SSD驱动器性能的配置选项?

1 个答案:

答案 0 :(得分:1)

有一些可调参数直接影响SSD与旋转驱动器:

innodb_flush_neighbors = OFF -- since there is no "rotational delay"
innodb_random_read_ahead = OFF
innodb_io_capacity     = 2000
innodb_io_capacity_max = 4000
innodb_page_size - Using a smaller size _may_ help if _all_ tables are
    accessed randomly _and_ have small rows.  (not for the faint of heart)

我没有"好"数值的数字,它们取决于SSD / Flash的性能特征。

可能有更多设置。例如,我不知道innodb_read_io_threadsinnodb_write_io_threads。 (默认值4,最大64.)

RAID控制器上的电池备份写入缓存使写入基本上是即时的。这也是一个因素

8.0(最新版本)有一些"成本"适用于磁盘与RAM访问的参数。它们是手动可调的。 (对不起,我没有详细说明。)我恳请开发人员让他们自我调整。

请记住,如果你是'#34;在极限"在这种可调参数中,你在系统崩溃之前就没有多大的空间。

请记住,优化索引和查询经常可以为您带来最大的收益。