标签: mysql innodb partitioning
我有一个包含5个哈希(key_1)分区的表。我想改变它,所以它有5个散列(key_2)分区,但不会丢失数据。
我该怎么做?我已搜索但很难找到确认我不会通过删除分区丢失数据。
答案 0 :(得分:1)
删除,截断或删除分区肯定会丢失数据。您可以使用ALTER TABLE更改此分区,例如ALTER TABLE t PARTITION BY HASH (key_2) PARTITIONS 5。这不会丢失数据,但(至少使用InnoDB),表将被锁定以进行写入并使用新分区重建。
ALTER TABLE
ALTER TABLE t PARTITION BY HASH (key_2) PARTITIONS 5