MySql分区作用和注意事项详解

分区表
1. 目的
主要目的是将数据按照一个较粗的颗粒度分在不同的表中
2. 某些实际场景能起到非常强大的作用
1. 表非常大,以至于无法全部放到内存中,或者旨在表的最后部分有热点数据,其它都是历史数据
2. 分区表的数据更容易维护,比如,想批量删除大量数据,可以使用清除整个分区的做法
	还可以对一个独立分区进行优化、检查、修复操作
3. 分区表的数据是放在不同的物理内存中,可以更高效的利用设备
4. 分区可以避免某些特殊瓶颈,如InnoDB单个索引的互斥访问,ext3文件系统的Inde锁竞争
		问题来了?什么是索引互斥访问
5. 还可以对独立的分区进行备份和恢复,这在非常大的数据集场景下非常高效
3. 分区的限制
1. 一个表最多有1024个分区
2. 无法使用外键
3. 分区字段中有主键或者唯一索引的列,那么所有的主键列和唯一索引列都必须包含进来
4. 分区的索引
分区表的索引只是再各个底层表上各加上一个完全相同的索引

5. 建立分区表
1. 用于做分区表的列必须是主键,或包含于主键中。

2. 如果ID自增,可以把用于分区的列也加入到主键中,形成复合主键,然后再执行
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值