本文介绍开启了无锁结构变更的数据库如何回收碎片空间。

前提条件

背景信息

数据库在频繁发生UPDATEDELETE操作后容易产生碎片空间,这部分空间不经过回收整理无法被再次利用。如果碎片空间过多,您可以主动回收碎片空间,优化数据库性能。

注意事项

  • 如果短期内表结构没有变更需求,您可以通过表结构变更回收碎片空间。
  • 如果短期内表结构有变更需求,在表结构变更的同时会完成空间的整理,不需要进行额外操作。
说明 只有开通了无锁结构变更的数据库,才会在变更表的同时完成空间回收整理。

操作步骤

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择数据库开发 > 数据变更 > 普通数据变更
  3. 通过普通数据变更工单修改表的注释或字段的注释。表完成变更后,表空间将得到重新整理。详细操作,请参见普通数据变更

    变更工单可以使用以下任一种SQL语句。

    • ALTER TABLE table_name COMMENT '修改后的表的注释';
    • ALTER TABLE table_name ENGINE=InnoDB;
    • OPTIMIZE TABLE table_name;
    • ALTER TABLE table_name MODIFY COLUMN field_name INT COMMENT '修改后的字段注释';
说明 DBA和管理员还可以通过新增SQL任务,变更表结构。详细操作,请参见任务管理