【问题标题】:datatype change in partitioned tables分区表中的数据类型更改
【发布时间】: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


【解决方案1】:

pt-online-schema-change 可能会提供一种以最小影响执行任务的方法,但速度仍然不快。

请提供SHOW CREATE TABLE 和您决定PARTITION 表的主要查询。我可能会争辩说你应该摆脱分区。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-10
    • 1970-01-01
    • 2014-07-20
    • 2018-04-11
    • 2013-09-12
    • 2017-09-13
    • 2019-04-17
    • 2014-03-05
    相关资源
    最近更新 更多