MySQL 从 5.1 版本开始就支持分区功能,分区是指按照一定逻辑,将一个表分解成多个更小的、更容易管理的部分。 从应用的访问逻辑上来说,只有一张表或一个索引,但实际上可能这张表由数十个物理分区对象组成,每个分区都是独立的对象,可以独自处理,也可以做为表的一部分处理。

分区概述

分区有利于管理非常大的表,他采用 “分而治之” 的逻辑。分区引入了分区键 (partition Key)的概念,分区键用来根据某个区间值(或范围值)、特定值列或 HASH 函数执行数据的聚集,让数据根据规则分布在不同的分区中,让一个大对象变成一个小对象。

MySQL 分区的优势主要分为四个方面:

  • 和单磁盘或者文件系统分区相比,可以存储更多数据。
  • 优化查询,在 WHERE 子句中包含分区条件是,可以只扫描必要的一个或多个分区,