💡
原文日文,约1800字,阅读约需5分钟。
📝
内容提要
本文讨论了MySQL中的optimize table命令,用于删除表中的空洞和优化文件碎片。optimize命令可以重新整理表空间并减少文件大小。在InnoDB引擎中,optimize命令实际上是alter table操作,可以实现索引重整和释放未使用的空间。optimize操作是在线DDL操作,不会阻塞CURD操作。
🎯
关键要点
- optimize table命令用于删除表中的空洞和优化文件碎片。
- optimize命令可以重新整理表空间并减少文件大小。
- 在InnoDB引擎中,optimize命令实际上是alter table操作,可以实现索引重整和释放未使用的空间。
- optimize操作是在线DDL操作,不会阻塞CURD操作。
- 删除操作在MySQL中并不会立即释放空间,而是标记为已删除,导致空洞的产生。
- 插入操作也可能造成空洞,尤其是使用随机字符串作为ID时。
- 使用optimize table命令可以有效减少表文件的大小。
- 在InnoDB中,optimize命令会被映射为alter table操作,释放未使用的空间。
- optimize操作的执行不会阻塞正在进行的CURD操作。
🏷️
标签
➡️