Percona社区版和MySql社区版提供“InnoDB:page_cleaner:1000ms意图循环耗时0ms”?

时间:2017-09-13 17:27:24

标签: mysql innodb

  

2017-09-12T19:04:53.549339Z 0 [注意] InnoDB:page_cleaner:1000ms意图循环需要23911ms。设置可能不是最佳的。 (在此期间,刷新= 200,驱逐= 0。)

我在Percona Community Edition和MySql Community Edition上出现此错误。我想知道这只是Percona和MySql社区版的问题......升级到MySQL企业版有助于解决这个问题吗?

有一些帖子提供了将innodb_lru_scan_depth从默认1024降低到256的建议。这并没有真正解决这个问题。不知道是否有人在企业版上遇到过这个问题?

value

1 个答案:

答案 0 :(得分:0)

(不是答案,而是来自更改日志的一些信息和链接) (链接与dev.mysql.com相关)

----- 2015-08-03 5.7.8候选发布 - 添加或更改功能 - InnoDB -----

innodb_purge_threads(/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_purge_threads)和innodb_page_cleaners(/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_page_cleaners)的默认值已从1更改如果页面清理程序线程数超过缓冲池实例数,则innodb_page_cleaners(/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_page_cleaners)将自动设置为与innodb_buffer_pool_instances相同的值(/ doc / refman / 5.7 / en / innodb-parameters.html #scavar_innodb_buffer_pool_instances)。

----- 2014-09-25 5.7.5里程碑15 - 添加或更改功能 - InnoDB -----

为了获得最佳的关闭和恢复性能,现在MySQL 5.7.4中引入的多线程页面清理器功能(innodb_page_cleaners(http://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_page_cleaners))支持关闭和恢复阶段。 (缺陷#18805275)

----- 2014-03-31 5.7.4里程碑14 - 添加或更改功能 - InnoDB,性能-----

InnoDB现在支持多个page_cleaner线程,用于从缓冲池实例中刷新脏页。新的系统变量innodb_page_cleaners用于指定page_cleaner线程的数量。默认值1维护MySQL 5.7.4之前的配置,其中只有一个page_cleaner线程。此增强功能建立在MySQL 5.6.2中完成的工作之上,该工作引入了单页清理程序线程,以从InnoDB主线程卸载缓冲池刷新工作。

----- 2011-10-03 5.6.3里程碑6 - 添加或更改功能 - InnoDB,性能-----

工作继续从InnoDB主线程卸载flush(http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_flush)操作,而不是在page_cleaner线程中执行它们。缓冲池刷新算法的最新更改可以提高某些I / O绑定工作负载的性能,尤其是在具有多个缓冲池实例的配置中。您可以通过调整innodb_lru_scan_depth(http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html#sysvar_innodb_lru_scan_depth)和innodb_flush_neighbors(http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html#sysvar_innodb_flush_neighbors)配置选项的设置来控制此功能。要查找最佳设置,请在打开和关闭自适应哈希索引(http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_adaptive_hash_index)和Doublewrite缓冲区(http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_doublewrite_buffer)的情况下测试上述设置的每个组合。有关详细信息,请参阅调整InnoDB缓冲池刷新(http://dev.mysql.com/doc/refman/5.6/en/innodb-lru-background-flushing.html)。

=======

建议阅读有关后台刷新的文章,并点击Affects me关于bugs.mysql.com中的任何相关错误,例如 81899和/或 76661

此外,...... innodb_io_capacity = 15000似乎很高,即使是SSD。