内容提要
Percona Toolkit 3.6.0引入了--resume选项,允许在中断后恢复pt-online-schema-change。使用--history选项来指示进度存储在历史表中。历史表结构包括job_id、db、tbl等字段。
关键要点
-
Percona Toolkit 3.6.0引入了--resume选项,允许在中断后恢复pt-online-schema-change。
-
使用--history选项可以将进度存储在历史表中,默认表名为percona.pt_osc_history。
-
历史表结构包括job_id、db、tbl、新表名、ALTER命令、其他参数、边界值和完成状态等字段。
-
如果表索引包含二进制列,需使用--binary-index选项创建历史表。
-
运行pt-online-schema-change时,使用--history选项会记录作业详情,便于后续恢复。
-
要恢复作业,需使用--resume=失败作业的ID,工具会从失败的块开始。
-
使用--no-drop-new-table和--no-drop-triggers选项是恢复作业的前提条件。
-
如果不使用--history选项,作业失败后无法恢复。
-
在作业失败时,可以通过pt-online-schema-change输出或历史表找到失败作业的ID。
延伸问答
如何恢复中断的pt-online-schema-change任务?
使用--resume选项并提供失败作业的ID来恢复任务,同时需要使用--history、--no-drop-new-table和--no-drop-triggers选项。
pt-online-schema-change的历史表结构是什么?
历史表结构包括job_id、db、tbl、新表名、ALTER命令、其他参数、边界值和完成状态等字段。
使用--history选项有什么好处?
使用--history选项可以将作业进度存储在历史表中,便于后续恢复作业。
如果不使用--history选项会怎样?
如果不使用--history选项,作业失败后将无法恢复。
如何创建包含二进制列的历史表?
如果表索引包含二进制列,需使用--binary-index选项创建历史表。
pt-online-schema-change的默认历史表名是什么?
默认历史表名为percona.pt_osc_history。