【发布时间】:2021-08-18 10:49:59
【问题描述】:
我们使用的是 MySQL 5.7.17
我们有两个几乎相同大小的大表,一个是分区表,另一个是未分区表。我们正在尝试将字段的数据类型从 varchar(45) 更改为 varchar(50)。
我们先在非分区表中尝试,一秒内完成,但在分区表中尝试相同时,需要更多时间,因此我们取消了它。
在分区表中花费更多时间的原因是什么,在这种情况下可能正在重建表,但我找不到解释这一点的好文档。
请分享您对此的了解,以便我们了解其背后的真实情况。
【问题讨论】:
-
在分区表中花费更多时间的原因是什么 对于实体表,您的更改操作是在线的,但对于分区表使用的是 COPY。尝试显式指定 INPLACE 方法 - 您会发现它无法应用于分区表。 PS。更改为 varchar(255) 或至少 192。对于未来...这不会增加所需的存储大小。
标签: mysql sqldatatypes alter-table database-partitioning mysql-5.7