从 pt-online-schema-change 删除 _new 表

car*_*rla 1 mysql percona-toolkit

我使用了 pt-online-schema-change 但过程中途终止了。

该脚本会复制原始表,其名称后跟“_new”。

由于进程在中间终止,因此表“_new”未被删除,当我尝试删除它时,我的应用程序崩溃了。

似乎每当我更改原始表时,这个 _new 表也会更改,因此如果找不到它就会崩溃。

我想知道如何删除这个 _new 表。

Koo*_*ter 5

与许多其他专为几乎无锁架构更改而设计的解决方案一样,pt-online-schema-change 的工作原理是在表上创建触发器并创建 _new 表。如文档中所述:

复制期间对原始表中数据的任何修改都会反映在新表中,因为该工具在原始表上创建触发器来更新新表中的相应行

如果此实用程序崩溃,您可能必须自己进行清理。这可能包括:

  • 删除触发器:查看SHOW TRIGGERS 语法以查看 pt-online-schema-change 刚刚创建的触发器;
  • 删除_new表。