首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果pt-online-schema-change工具中止,它会做什么?

如果pt-online-schema-change工具中止,它会做什么?
EN

Stack Overflow用户
提问于 2015-03-25 19:29:51
回答 1查看 1.3K关注 0票数 3

我计划在复制环境中的生产服务器上使用pt-online-schema-change工具执行table alter。想要了解当pt-online-schema-change工具由于服务器工具而中止时执行的步骤。是否可以在由于服务器负载而中止后恢复?它会删除临时表和它创建的触发器吗?我需要重新开始吗?

EN

回答 1

Stack Overflow用户

发布于 2015-06-12 16:44:04

pt-online-schema-change对它所做的事情非常冗长。所以,当某些东西失败时,我总是能够读到最后一行,它会告诉我该怎么做。

特别是当迁移由于负载而失败时,触发器并没有被删除。在这种情况下,输出已经准确地说明了我需要执行什么操作才能删除它们。它们有可能被保留下来,以便能够恢复。我不知道这个。在我的例子中,我总是丢弃触发器,在调整参数或降低数据库使用率后从头开始。如果你不是在编写pt-online-schema-change执行的脚本,我想我的方法是可行的。

关于自动删除临时表和触发器;默认情况下,它会删除它们(参见documentation)。但是,您始终可以指定--nodrop-old-table--nodrop-new-table--nodrop-triggers。对于较大的表(当我有磁盘空间时),我通常总是指定--nodrop-old-table。这使我能够快速回滚到旧表,以防在交换时出现问题,只需执行以下命令

代码语言:javascript
复制
RENAME TABLE mytable TO mytable_failedmigration, old-table TO mytable;

如果迁移成功,我将按照https://serverfault.com/a/566710/37237中的说明删除我的巨型表。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29254425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档