MySQL分区技术

mysql分区技术是mysql5.1以后出现的新技术,能替代分库分表技术,它的优势在于只在物理层面来降低数据库压力。

常用的MySQL分区类型:

1.RANGE分区:基于属于一个给定的连续区间的列值,把多行分配给分区(基于列)。

2.LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合的某个值来进行选择(基于列值是固定值的)。

3.HASH分区:基于用户自定义的表达式的返回值来进行分区选择,该表达式使用将要插入列表中的这些行的列值进行计算,这个函数可以包含mysql中有效的产生非负整数值的任何表达式。

4.KEY分区:类似于HASH分区,却别在于KEY分区只支持计算一列或者多列,且mysql服务器提供其自身的哈希函数。

日常中用的比较多的就是RANGE,LIST分区

实例:

复制代码
CREATE TABLE TEST{
    store_id INT NOT NULL
}
PARTITION BY RANGE(store_id)(
   PARTITION p0 VALUES LESS THAN(6),
   PARTITION p1 VALUES LESS THAN(11)
);
复制代码

以上意思是 当store_id值小于6就会分配到p0分区 小于11则是p1分区

复制代码
CREATE TABLE TEST{
    store_id INT NOT NULL
}
PARTITION BY LIST(store_id)(
   PARTITION p0 VALUES IN (1,2,3)  ,
   PARTITION p1 VALUES IN (4,5,6)
);

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐
  • —软件人才免语言低担保 赴美带薪读研!—



你可能感兴趣的:(mysql,分区,技术)