【MySQL】分区表的使用

本文介绍了MySQL分区表的概念,探讨了分区的原因,如便于大数据量操作和优化查询。详细阐述了如何创建按HASH、RANGE和LIST分区的表,并通过实例展示了分区的使用。还提到了分区表的原理和注意事项,包括选择合适的分区键以避免跨分区查询,并强调了主键和唯一索引的要求。
摘要由CSDN通过智能技术生成

什么是分区表?

在逻辑上为一个表,在物理上存储在多个文件中。所有的数据操作都会通过逻辑表转化成对存储引擎的接口调用,底层的物理表对于SQL层来说完全是一个暗箱操作。

为什么要分区?


将数据按照较粗的粒度存放在不同的表中,将关联的数据存放在一起,如果想批量删除整个分区非常方便。批量删除大数据量的数据可以采用清除整个分区的方式。比如我们后文中会提到的对每年的日志表进行归档处理,如果适用到分区表就很smart。

如何建立分区表?


首先通过SHOW PLUGINS; 确认Mysql服务器是否支持分区表。如果出现下面红框标注出来的内容代表改Mysql服务器支持分区。




分区表的类型


按HASH分区(HASH)


特点

根据MOD(分区键,分区数)的值把数据行存储在表的不同分区中。

数据可以平均的分布在各个分区中。

HASH分区的键值必须是一个INT类型的值,或者通过函数可以转为INT类型。

如何建立HASH分区表

建立如下数据库:


创建HASH分区表:

 

如果要将非整数类型的数据列做为分区键,则可以通过Mysql函数转换来实现:


<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值