Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何执行MySQL分区调整?_Mysql_Database_Partitioning - Fatal编程技术网

如何执行MySQL分区调整?

如何执行MySQL分区调整?,mysql,database,partitioning,Mysql,Database,Partitioning,我有一个表,其整数列范围为1到32(该列标识存储的记录类型) 类型5和12代表总行数的70%,并且这个数字大于1M行,因此对表进行分区似乎是有意义的 问题是:如何创建一组3个分区,一个包含类型5记录,第二个包含类型12记录,第三个包含剩余记录?使用 如果type是一个索引,那么MySQL已经为您在逻辑上对表进行了分区。除非您真的需要物理分区,否则在我看来,您只是在给自己制造麻烦。“对表进行分区似乎很有意义”。你真的有什么问题吗,或者你是从互联网上得到这个想法的?100万行,你已经想分区了。。 c

我有一个表,其整数列范围为1到32(该列标识存储的记录类型)


类型5和12代表总行数的70%,并且这个数字大于1M行,因此对表进行分区似乎是有意义的

问题是:如何创建一组3个分区,一个包含类型5记录,第二个包含类型12记录,第三个包含剩余记录?

使用


如果
type
是一个索引,那么MySQL已经为您在逻辑上对表进行了分区。除非您真的需要物理分区,否则在我看来,您只是在给自己制造麻烦。

“对表进行分区似乎很有意义”。你真的有什么问题吗,或者你是从互联网上得到这个想法的?100万行,你已经想分区了。。
create table some_table (
    id INT NOT NULL,
    some_id INT NOT NULL
)
PARTITION BY LIST(some_id) (
    PARTITION fives VALUES IN (5),
    PARTITION twelves VALUES IN (12),
    PARTITION rest VALUES IN (1,2,3,4,6,7,8,9,10,11,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32)
);