MySQL分区表

1.确认Mysql服务是否支持分区表

命令:

 

2.Mysql分区表特点

1.在逻辑上为一个表,在物理上存储在多个文件中,

2.创建分区表语句:

MySQL分区表_第1张图片

注意:区别

生成的文件:

非分区表:

分区表:

MySQL分区表_第2张图片

 3.按HASH分区:

1.根据MOD(分区键、分区数)的值,把数据行存储到表的不同分区中

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

3.HASH的值必须是一个INT类型的值,或是通过函数可以转为INT类型

1.如何建立HASH分区表:

1.通过HASH函数建立:

MySQL分区表_第3张图片

 2.如果键值不是INT类型,需要先用UNIX函数转换为INT类型:

MySQL分区表_第4张图片

3.创建分区表时,分区数量必须指定:(上述两个例子分区数量为4)

4.创建分区表可以用到的函数:(都是把非INT型转换为INT型的,具体用法自行百度)

MySQL分区表_第5张图片

5.建立HASH分区表:

        login_ip作为键值,分为六个区

MySQL分区表_第6张图片

建立好后:

MySQL分区表_第7张图片

插入数据:(正常插入语句,分区由Mysql自动管理)

4.按范围分区(RANGE):

MySQL分区表_第8张图片

解释:customer中的id 0-9999的范围储存在p0分区中,以此类推。。大于30000的全部存储p3分区中

注意:分区范围不足,则报错:

5.RANGE(按范围分区)适用场景:

:易于归档

:提高查询效率

5.LIST分区:

 

 

 

 

你可能感兴趣的:(MySQL)