数据库中pt-online-schema-change的示例分析-创新互联-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

数据库中pt-online-schema-change的示例分析-创新互联

这篇文章主要介绍了数据库中pt-online-schema-change的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

我们提供的服务有:网站建设、网站设计、微信公众号开发、网站优化、网站认证、邢台ssl等。为1000多家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的邢台网站制作公司#!/bin/bash #运行该脚本需要更改2个地方:第一个是基本信息;第二个是--alter #基本信息(需要更改) user='xxx' password='xxx'   host='xxx' port=xxxx D='xxx' t='xxx' #--alter(需要更改) #--------------example---------------- # 1.增加字段 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "ADD COLUMN content text" D=$D,t=$t --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --print --execute #  # 2.删除字段 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "DROP COLUMN content " D=$D,t=$t --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --quiet --execute #  # 3.修改字段 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "MODIFY COLUMN age TINYINT NOT NULL DEFAULT 0" D=$D,t=$t --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --quiet --execute # # 4.字段改名 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "CHANGE COLUMN age address varchar(30)" D=$D,t=$t --no-check-alter --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --quiet --execut # # 5.增加索引 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "ADD INDEX idx_address(address)" D=$D,t=$t --no-check-alter --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --print --execute # # 6.删除索引 # pt-online-schema-change --user=$user --password=$password --host=$host --port=$port  --alter "DROP INDEX idx_address" D=$D,t=$t --no-check-alter --no-check-replication-filters --alter-foreign-keys-method=auto --recursion-method=none --print --execute # #--------------参数说明------------- # 1. --ask-pass #    隐式输入连接MySQL的密码 # 2. --defaults-file #    -F读取配置文件 # 3. --alter #    结构变更语句,不需要alter table关键字。可以指定多个更改,用逗号分隔。如下场景,需要注意: #    不能用RENAME来重命名表。        #    列不能通过先删除,再添加的方式进行重命名,不会将数据拷贝到新列。 #    如果加入的列非空而且没有默认值,则工具会失败。即其不会为你设置一个默认值,必须显示指定。 #    删除外键(drop foreign key constrain_name)时,需要指定名称_constraint_name,而不是原始的constraint_name。 #    如:CONSTRAINT `fk_foo` FOREIGN KEY (`foo_id`) REFERENCES `bar` (`foo_id`),需要指定:--alter "DROP FOREIGN KEY _fk_foo" # 4. --alter-foreign-keys-method #    需要特殊处理带有外键约束的表,以保证它们可以应用到新表.当重命名表的时候,外键关系会带到重命名后的表上。 #    该工具有两种方法,可以自动找到子表,并修改约束关系。 #    auto: 在rebuild_constraints和drop_swap两种处理方式中选择一个。 #     #    rebuild_constraints:使用 ALTER TABLE语句先删除外键约束,然后再添加.如果子表很大的话,会导致长时间的阻塞。 #    drop_swap: 执行FOREIGN_KEY_CHECKS=0,禁止外键约束,删除原表,再重命名新表。这种方式很快,也不会产生阻塞,但是有风险: #                在删除原表和重命名新表的短时间内,表是不存在的,程序会返回错误。 #                如果重命名表出现错误,也不能回滚了.因为原表已经被删除。 #    none: 类似"drop_swap"的处理方式,但是它不删除原表,并且外键关系会随着重命名转到老表上面。 # 5. --[no]check-alter #    默认yes,语法解析。配合--dry-run 和 --print 一起运行,来检查是否有问题(change column,drop primary key)。 # # 6. --max-lag #    默认1s。每个chunk拷贝完成后,会查看所有复制Slave的延迟情况。要是延迟大于该值,则暂停复制数据,直到所有从的滞后小于这个值,使用Seconds_Behind_Master。 #    如果有任何从滞后超过此选项的值,则该工具将睡眠--check-interval指定的时间,再检查。如果从被停止,将会永远等待,直到从开始同步,并且延迟小于该值。 #    如果指定--check-slave-lag,该工具只检查该服务器的延迟,而不是所有服务器。 # 7. --check-slave-lag #    指定一个从库的DSN连接地址,如果从库超过--max-lag参数设置的值,就会暂停操作 #  # 8. --check-interval #    默认是1。--max-lag检查的睡眠时间。 # # 9. --[no]check-replication-filters #    默认yes。如果工具检测到服务器选项中有任何复制相关的筛选,如指定binlog_ignore_db和replicate_do_db此类。发现有这样的筛选,工具会报错且退出。 #    因为如果更新的表Master上存在,而Slave上不存在,会导致复制的失败。使用–no-check-replication-filters选项来禁用该检查。 # 10. --[no]drop-old-table #    默认yes。复制数据完成重命名之后,删除原表。如果有错误则会保留原表。 #  # #-------------------------------------------------

使用时根据案例和参数说明更改相关参数即可。

感谢你能够认真阅读完这篇文章,希望小编分享的“数据库中pt-online-schema-change的示例分析”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前题目:数据库中pt-online-schema-change的示例分析-创新互联
分享网址:http://kswsj.cn/article/diesih.html

其他资讯