mysql 建立分区的两种方式介绍(代码示例)


本文摘自PHP中文网,作者不言,侵删。

本篇文章给大家带来的内容是关于mysql 建立分区的两种方式介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

#list分区--键值通过自定义的list来确定写入到哪个分区中。

优势:支持int,时间,varchar等值

劣势:需要自己写相应数据的从属(写入或者查询到哪个分区),即后期若分区条件修改需要再配置。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

CREATE TABLE t_test (

    unid INT auto_increment ,

    uuid VARCHAR(36),

    cdate datetime,

    type int,

        text varchar(30),

        PRIMARY KEY(unid,type)

)

PARTITION BY LIST COLUMNS(type) (        #这里以type字段来分区,list分区中,这个字段可以为int整形或者某个值

    PARTITION pRegion_1  VALUES IN (1),     #这里的意思是,当type=1时,数据会写入到pRegion_1分区中

    PARTITION pRegion_2  VALUES IN (2),     #同上

    PARTITION pRegion_3  VALUES IN (3),

    PARTITION pRegion_4  VALUES IN (4)

);

#hash分区--键值通过hash算法计算后,自动写入到相应的分区中 。

优势:不需要自己写相应数据的从属(写入或者查询到哪个分区)

劣势:只支持int整型

1

2

3

4

5

6

7

8

9

10

CREATE TABLE t_test (

    unid INT auto_increment ,

    uuid VARCHAR(36),

    cdate datetime,

    type int,

    text varchar(30),

    PRIMARY KEY(unid,type)       #复合主键,因为后面要用type字段来分区

)

PARTITION BY HASH ( type )   #这里以type字段来分区,type必须是主键或者是复合主键包含的字段,hash分区的方式必须该字段为int

PARTITIONS 10;              #这里设定的是分区数为10,数据会通过type字段经过hash算法后,自动归属到10个分区中的某个分区中

以上就是mysql 建立分区的两种方式介绍(代码示例)的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

mysql和redis有什么区别

如何查看mysql语句的运行时间

mysql里面字段是什么意思?

重装mysql步骤详解

mysql如何登陆%_mysql

db2和mysql语法的区别是什么

基于tags实现内容推荐的方法(代码)

mysql router怎么样

mysql数据库 load data 多种用法

mysql关于加密解密的函数

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...