# 分区管理

URL: https://caijiao.org/mariadb/advanced/partition/manage
Source: docs/mariadb/advanced/partition/manage.md
Description: 本节介绍 MariaDB 中分区表的管理方法，包括添加、删除和维护分区，帮助用户灵活管理分区数据，提高数据库性能和可维护性。

## 1. 添加分区

可以通过 `ALTER TABLE` 命令向分区表添加新的分区。例如：

```sql
ALTER TABLE orders
ADD PARTITION (
  PARTITION p2022 VALUES LESS THAN (2023)
);
````

## 2. 删除分区

删除不需要的分区，释放空间：

```sql
ALTER TABLE orders
DROP PARTITION p2019;
```

删除分区后，分区内的数据也会被删除，请谨慎操作。

## 3. 合并分区

MariaDB 不支持直接合并分区，需要先删除分区再重新创建。

## 4. 分区维护操作

* **优化分区表**
  对分区表进行 `OPTIMIZE TABLE`，以整理分区中的数据和索引。

```sql
OPTIMIZE TABLE orders;
```

* **检查分区表**
  使用 `CHECK TABLE` 检查分区表的完整性。

```sql
CHECK TABLE orders;
```

## 5. 注意事项

* 分区管理操作可能会锁表，建议在低峰期执行。
* 动态添加分区适合按时间等递增字段的场景。
* 删除分区需确认数据备份，避免数据丢失。

---

有效的分区管理提升了 MariaDB 大数据表的灵活性和查询性能，是数据库维护的重要部分。
