MySQL 8.4 Release Notes
17.11 InnoDB 磁盘 I/O 和文件空间管理
作为DBA,您需要管理磁盘I/O,以避免I/O子系统饱和,并管理磁盘空间以避免存储设备填满。ACID设计模型要求一定的I/O,这可能看起来是冗余的,但有助于确保数据可靠性。在这些约束下,InnoDB
尝试优化数据库工作和磁盘文件组织以最小化磁盘I/O。有时,I/O会被推迟到数据库不忙或需要将所有内容 brought to a consistent state时,如在数据库重启后快速关闭。
本节讨论了使用默认MySQL表(也称为InnoDB
表)的主要I/O和磁盘空间考虑:
-
控制背景I/O的数量以提高查询性能。
-
启用或禁用提供额外可靠性的功能,但需要更多I/O。
-
将表组织成许多小文件、少数大文件或两者组合。
-
平衡redo日志文件的大小与日志文件满时发生的I/O活动。
-
如何对表进行重新组织以获得最佳查询性能。