MariaDB: 数据删除后的磁盘空间回收

本文档属于故障排除指南的一部分。您可以在此处查看完整指南:常见MariaDB问题及其解决方案

👋 欢迎查阅 Stackhero 文档

Stackhero 提供即开即用的 MariaDB 云服务,专为生产级工作负载设计。您将获得:

  • 无限制的连接数和数据传输。
  • 内置 phpMyAdmin Web 管理界面,便于数据库管理。
  • 一键 更新,维护更轻松。
  • 私有专用基础设施,确保高 性能与强大 安全性

几分钟内即可启动全托管 MariaDB 实例。 Stackhero 负责部署、更新与安全,您只需专注于您的应用。了解更多 MariaDB 云托管信息

从MariaDB表中删除数据不会自动释放其占用的磁盘空间。要回收此空间,您可以执行以下SQL命令:

OPTIMIZE TABLE <table>;

此命令通过创建临时表、转移数据并替换原始表来重建表。在此过程中,表将被锁定且不可用。锁定的持续时间取决于表的大小。

为了尽量减少对数据库性能的影响,建议在低活动期或维护窗口期间运行OPTIMIZE TABLE命令。