使用pt-osc修改主键时注意
使用 pt-online-schema-change 做在线ddl最添加普通索引、列,修改列类型、添加默认值等使用比较常规,但涉及到要修改的是主键时就有点棘手。在我修改线上实例过程中,有这样的需求,不妨先思考一下怎么做才好: 原表上有个复合主键,现在要添加一个自增id作为主键,如何进行 会涉及到以下修改动作: 删除复合主键定义 添加新的自增主键 原复合主键字段,修改成唯一索引 如果你够聪明,应该会把这三个操作放在同一个 alter table 命令执行。percona手册里有两个地方对修改主键进行了特殊注解: –alter A notable exception is when a PRIMARY KEY or UNIQUE INDEX is being created from existing columns as part of the ALTER clause; in that case it will use these column(s) for the DELETE trigger. –[no]check-alter DROP PRIMARY KEY If –alter contain DROP PRIMARY KEY (case- and space-insensitive), a warning is printed and the tool exits unless –dry-run is specified....