mysql分区介绍

 
  

昨天在写wordpress怎么分库分表的时候突然想起了mysql可以分区,这个是mysql自带的功能。mysql分区
主要是将一大表,根据条件分割成若干个小表。mysql5.1开始支持数据表分区了。这个分表的类似
mysql分区的优点
分区的目的都是用来提升性能,没有分区之前,数据每次在查询和检索总是面向的是整个数据库和表。分区之后,mysql针对每个分区生成特定的数据文件与索引文件。每次只会检索特定的部分数据,因此可以更好的来执行和维护数据库。究其原因还是因为在分区之后表指派到不同的物理驱动器上,这样便可在同时访问多个分区时减少物理 I/O 争用。

查看数据库是否支持分区

SHOW VARIABLES LIKE '%partition%';

mysql分区介绍_第1张图片

YES则表明该数据库支持分区操作

mysql中4种分区方式
1)RANGE分区:基于属于一个给定连续区间的列值,把多行分配给分区。就是给定一个值,给定的值是哪个区间里的放到一个区间里
2)LIST分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进行选择。
3)HASH分区:基于用户定义的表达式的返回值来进行选择的分区,该表达式使用将要插入到表中的这些行的列值进行计算。这个函数可以包含MySQL 中有效的、产生非负整数值的任何表达式。
4)KEY分区:类似于按HASH分区,区别在于KEY分区只支持计算一列或多列,且MySQL 服务器提供其自身的哈希函数。必须有一列或多列包含整数值。

PS.
mysql5.5 分区的功能又增强了【详情查看】

分区详解,请查看下面的网址,讲的比较详细,包括怎么分区
http://my.oschina.net/ydsakyclguozi/blog/393583

 


QQ交流群:136351212
查看原文: http://www.phpsong.com/2444.html

你可能感兴趣的:(mysql分区介绍)