分区有利于管理非常大的表,它采用了“分而治之”的逻辑,根据一定的规则,数据库把一个表分解成多个更小的、更容易管理的部分。
每一个分区都是独立的对象,可以独自处理,但对应用完全透明。
以MySQL5.7为例:
select * from information_schema.`PLUGINS` where PLUGIN_NAME='partition'
分区类型:
RANGE 分区 、LIST、COLUMNS、HASH、KEY、子分区。
无论哪种MYSQL分区,不能使用主键/唯一键字段以外的其他字段分区,要么分区表上没有主键/唯一键,要么分区表的主键/唯一键都必须包含分区键,否则会报错,去掉主键约束后方可。