什么是表分区?
表分区是将一个大表按照特定规则划分成多个较小的部分(分区),每个分区实际上是一个独立的表,但可以通过父表统一访问。
分区的优势:
- 查询性能提升 - 查询只需扫描相关分区,而非整表
- 维护简化 - 可单独维护分区,如删除过期数据只需删除整个分区
- 批量操作高效 - 加载/删除数据时可以直接添加/移除分区
- 减少索引大小 - 每个分区有独立的索引,索引树更小效率更高
实施步骤:
- 创建一个分区表(需要指定分区键)
- 为分区表创建各个月份的分区
- 查询时可自动使用分区
- 定期创建未来月份的分区
注意事项:
- 删除分区会永久删除该分区中的数据
- 创建分区表并不会迁移现有数据,需要手动迁移
- 已创建的分区不能修改时间范围,只能删除重建