MySQL复合分区

2015-12-15 22:18:11 · 作者: · 浏览: 26

譬如:


上述创建语句中,最外层是RANGE分区,分为3个区,里面是HASH子分区,分为2个区,这样,该表一共分了3*2=6个分区。


当然,也可以用SUBPARTITION语句来显示定义子分区。


注意:


1> 如果你在分区中使用了SUBPARTITION语句,则每个分区中都必须定义,且每个分区中子分区的数量必须保持一致。譬如以下两种用法就会报错:


2> 在SUBPARTITION语句中,可指定该分区的物理位置。譬如:


以上这个创建语句,将不同的分区分布到不同的物理路径下,无疑会极大的分散IO,这一点还是蛮吸引人的。


可惜,在本机测试过程中,报“ERROR 1030 (HY000): Got error -1 from storage engine”错误,具体原因还不太清楚,怀疑是MySQL的bug。


参考:


http://dev.mysql.com/doc/refman/5.6/en/partitioning-subpartitions.html


http://dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html