美文网首页
MySQL分区表

MySQL分区表

作者: 辉_ace | 来源:发表于2019-10-20 15:41 被阅读0次

    简介:

      mysql从5.1版本之后开始支持数据分区表。简单来说,分区表就是将一张大表的数据按照某种方式拆分,拆分出若干张小表,每张小表中存放不同的数据。

    拆分方式:

      1)水平拆分。按照表中某一个属性进行拆分。

      2)垂直拆分。直接进行窄表操作,将特定的数据列分入特定的分区表。

    拆分形式:

      1)range分区。把连续且不重叠的字段且是连续区间的值分配给分区,通过partition by range和values less than操作符定义。例:partition partitionTableName by range(column)(partition p1 values less than(value),partition p2 values less than(value))

      2)list分区。和range分区类似,但是按照某列的特定值进行分区。通过partition partitionTableName values in (value)操作符进行定义

      3)hash分区。基于hash函数的模数,根据用户传入的列名通过用户定义的函数的返回值进行分区,用于确保在分区表中平均分布。通过partition by hash(函数(列名))操作符进行定义。

      4)key分区。基于mysql内置提供的hash函数对列名进行计算完成分区。通过partition by key(列名)操作符进行定义。

      5)复合分区。对分区进行再次分割,产生若干个字分区。可以通过hash分区或key分区进行再次分割。当使用符合分区需注意:1)如果当前一个分区中创建了复合分区,则其他分区也要创建复合分区。2)每个分区中的子分区数必须相同。

    相关文章

      网友评论

          本文标题:MySQL分区表

          本文链接:https://www.haomeiwen.com/subject/nncamctx.html