Skip to main content
Enterprise applications
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

INNODB_FLUG_METHOD

贡献者

InnoDB_flush_方法 参数用于指定InnoDB如何打开和刷新日志和数据文件。

优化

在InnoDB优化中、如果适用、设置此参数会调整数据库性能。

以下选项用于通过InnoDB转储文件:

  • fsync。InnoDB使用 fsync() 系统调用以刷新数据和日志文件。此选项为默认设置。

  • O_DSYNC。InnoDB使用 O_DSYNC 选项打开并刷新日志文件,并使用fsync()刷新数据文件。InnoDB不使用 O_DSYNC 这是因为在许多UNIX版本上都存在问题。

  • O_DIRECT。InnoDB使用 O_DIRECT 选项(或 directio() 在Solaris上)以打开数据文件并使用 fsync() 刷新数据和日志文件。此选项在某些版本的GNU或Linux、FreEBSD,和Solaris上可用。

  • O_DIRECT_NO_FSYNC。InnoDB使用 O_DIRECT 选项;但是、它会跳过 fsync() 系统调用。此选项不适用于某些类型的文件系统(例如XFS)。如果不确定文件系统是否需要 fsync() 系统调用(例如、要保留所有文件元数据)、请使用 O_DIRECT 选项。

观察结果

在NetApp实验室测试中、 fsync NFS和SAN上使用了默认选项、与相比、这是一个非常好的性能提升 O_DIRECT。将刷新方法用作时 O_DIRECT 通过使用ONTAP、我们发现客户端会以串行方式在4096块的边界处写入大量单字节写入。这些写入会增加网络延迟并降低性能。