标签:报错 下载安装 default 工具 arc 结构 环境 修改字段 百度
(1)下载安装 online-schema-change属于percona-toolkit程序包里面的一个工具, 需要下载安装percona-toolkit程序包
百度云盘下载地址:https://pan.baidu.com/s/1bp1OOgf
yum install percona-toolkit-2.2.7-1.noarch.rpm -y
(2)online-schema-change工具原理
创建一个和你要执行alter操作的表一样的空表结构,执行表结构修改,然后从原表中copy原始数据到表结构修改后的表,当数据copy完成以后就会将原表移走,用新表代替原表,默认动作是将原表drop掉。在copy数据的过程中,任何在原表的更新操作都会更新到新表,因为这个工具在会在原表上创建触发器,触发器会将在原表上更新的内容更新到新表。如果表中已经定义了触发器这个工具就不能工作了。
(3)注意点
1、操作的表必须有主键或唯一索引否则报错。
2、如果表有外键,除非使用 --alter-foreign-keys-method 指定特定的值,否则工具不予执行。
3、建议在业务低峰区使用
4、操作有风险, 建议提前备份数据
5、当是主从环境,不在乎从的延迟,则需要加--recursion-method=none参数。当需要尽可能的对服务产生小的影响,则需要加上--max-load参数。
(4)常见操作
添加字段:
pt-online-schema-change h=192.168.1.x,u=root,p=your_password,D=db_name,t=table_name --execute --alter "‘add column col1_test int"
修改字段:
pt-online-schema-change h=192.168.1.x,u=root,p=your_password,D=db_name,t=table_name --execute --alter " ‘MODIFY COLUMN col1_test TINYINT NOT NULL DEFAULT 0 "
删除字段:
pt-online-schema-change h=192.168.1.x,u=root,p=your_password,D=db_name,t=table_name --execute --alter "drop column "
参考文档:https://www.cnblogs.com/janehoo/p/5382474.html
标签:报错 下载安装 default 工具 arc 结构 环境 修改字段 百度
原文地址:https://blog.51cto.com/1000682/2356779