如何更改 mysql innodb 分区以使用另一个密钥?
how to alter a mysql innodb partition to use another key?
我的 table 有 5 个散列 (key_1) 分区。我想改变它,所以它有 5 个散列 (key_2) 分区,但不会丢失数据。
我该怎么做?我已经搜索过,但很难找到确认我不会因删除分区而丢失数据。
删除、截断或删除分区肯定会丢失数据。您可以使用 ALTER TABLE
更改分区,例如 ALTER TABLE t PARTITION BY HASH (key_2) PARTITIONS 5
。这不会丢失数据,但是(至少对于 InnoDB),table 将被锁定以进行写入并使用新分区重建。
我的 table 有 5 个散列 (key_1) 分区。我想改变它,所以它有 5 个散列 (key_2) 分区,但不会丢失数据。
我该怎么做?我已经搜索过,但很难找到确认我不会因删除分区而丢失数据。
删除、截断或删除分区肯定会丢失数据。您可以使用 ALTER TABLE
更改分区,例如 ALTER TABLE t PARTITION BY HASH (key_2) PARTITIONS 5
。这不会丢失数据,但是(至少对于 InnoDB),table 将被锁定以进行写入并使用新分区重建。