- 文档首页
云数据库 MySQL 版
内核功能
性能
支持使用 fdatasync
支持使用 fdatasync
本文介绍云数据库 MySQL 版为 MySQL 5.7 实例提供的 fdatasync 调用的相关信息。
InnoDB 的 redo log/doublewrite buffer 目前采用 fsync 系统调用进行落盘,该调用包含文件元数据落盘和文件数据落盘操作。在 redo log/doublewrite buffer 等文件大小固定的写入场景下,刷新最后修改时间等其他文件元数据是非必要的,fdatasync 系统调用能够避免总是刷新文件元数据到存储设备上,以减少写入开销。
MySQL 在 8.0 版本支持使用 fdatasync 系统调用代替 fsync 进行落盘,并在 8.4 及以后的版本默认开启该优化。云数据库 MySQL 版将该优化由 MySQL 8.0 移植至 MySQL 5.7。
MySQL 5.7 版本,内核版本 MySQL 5.7 20250615 及以上。
适用于写入压力较大,需要频繁同步刷写 redo 日志和 doublewrite buffer 的场景。
在 sysbench-write-only 高并发持续写入场景下,QPS 性能可提升 5% 左右。
在云数据库 MySQL 版控制台,修改参数 loose_innodb_use_fdatasync 的值为 on,即可为实例开启 fdatasync 落盘优化。关于修改参数的详细信息,可参见修改参数。
最近更新时间:2026.05.28 11:52:21