我有一个有数百万行的表,我想创建一些分区,但我真的不知道如何才能做到这一点。我的意思是,我想让以ID 1 -> 10000开头的数据在分区1上,而以ID 10001 -> 20000开头的数据在分区2上;以此类推...?你能给我举个例子吗?
我已经在互联网上搜索了很多,我读了很多文档,但我仍然不明白该怎么做!
诚挚的问候,
发布于 2010-06-01 20:08:51
以下是您开始使用分区的方式:
ALTER TABLE table_with_millions_of_rows
PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (10000),
PARTITION p1 VALUES LESS THAN (20000),
PARTITION p2 VALUES LESS THAN MAXVALUE
)有关如何管理(创建、删除、更改设置等)的更多信息分区可以在MySQL手册的"Partitioning“一章中找到。
注意: MySQL中的分区从5.1版开始可用。
发布于 2010-06-01 19:27:25
CREATE TABLE part1 (...)
CREATE TABLE part2 (...)
INSERT INTO part1 SELECT * FROM original WHERE id => 0 AND id < 10000
INSERT INTO part2 SELECT * FROM original WHERE id => 10000 AND id < 20000https://stackoverflow.com/questions/2949120
复制相似问题