我的SQL表分区

时间:2015-01-22 13:17:51

标签: mysql sql database-partitioning

  • 示例:我创建了一个包含1000个数据的表。

  • 我对此表进行分区

     alter table rnds add primary key (id) partition by HASH(id) partitions 200;
    
  • 我检查了mysql数据目录,发现它创建了5部分

rnds#P#p0.ibd , rnds#P#p1.ibd , rnds#P#p2.ibd , rnds#P#p3.ibd , rnds#P#p4.ibd

  • 在此表中插入另一个1000 row并成功插入后。
  • 我的问题是为什么不为新的1000 data创建新的部分。
  • 创建表分区后,表如何管理新数据。

1 个答案:

答案 0 :(得分:0)

如果你想创建5个分区,你应该使用:

alter table rnds partition by HASH(id) partitions 5;

此命令将创建5个分区,并根据ID将新行添加到它们中。不会自动创建新分区。您可以使用ADD PARTITION命令添加新分区。

有关详细信息,请参阅this link