一、pt-osc的工作原理 1、创建一个和源表一样表结构的新表2、在新表执行DDL语句3、在源表创建三个触发器分别对应insert、update、delete操作4、从源表拷贝数据到新表,拷贝过程中源表通过触发器把新的DML操作更新到新表中5、rename源表到old表中,把新表rename为源表, ...
转载 2021-09-15 16:11:00
370阅读
2评论
参考:https://www..com/mysql-dba/p/9901632. https://blog..net/hanbowu/article/details/79919621 pt-osc原理 一,环境检查 # uname -a Linux prd-mysql-
原创 2022-01-20 13:38:50
224阅读
要根据4
原创 2024-07-03 21:44:41
10阅读
导读:上篇文章讲过MySQL原生的Online DDL还是有很多限制的,还是会遇到data meta lock的问题等诸多不便,然后就有了我们今天的话题,通过pt-osc在线执行DDL。一、pt-osc的工作原理1、创建一个和源表一样表结构的新表2、在新表执行DDL语句(空表嘛,所以。。。)3、在源表创建三个触发器分别对应insert、update、delete操作4、从源表拷贝数据到新表,拷贝过
原创 2022-02-13 15:46:21
388阅读
导读:上篇文章讲过MySQL原生的Online DDL还是有很多限制的,还是会遇到data meta lock的问题等诸多不便,然后就有了我们今天的话题,通过pt-osc在线执行DDL。一、pt-osc的工作原理1、创建一个和源表一样表结构的新表2、在新表执行DDL语句(空表嘛,所以。。。)3、在源表创建三个触发器分别对应insert、update、delet...
原创 2021-08-09 16:19:59
191阅读
从下面几个方面对比了下pt-osc和ghost
IT
原创 2021-09-07 18:19:36
545阅读
1、某天上线前,看一下上线的SQL列表,发现有一个SQL需要对大表(三千万左右记录)增加一个字段,这个表24小时都会有业务使用,只有晚上的时候操作没那么频繁。为了降低对业务的影响,决定使用pt-online-schema-change工具进行更新表结构。pt-online-schema-change:是对大表进行在线alter操作,并尽量避免影响线上业务,这是最优秀的mysql管理工作之一,...
原创 2021-08-10 09:47:49
450阅读
1、某天上线前,看一下上线的SQL列表,发现有一个SQL需要对大表(三千万左右记录)增加一个字段,这个表24小时都会有业务使用,只有晚上的时候操作没那么频繁。为了降低对业务
原创 2022-02-13 15:49:29
413阅读
pt-osc概述
原创 2017-06-07 17:44:42
10000+阅读
一、问题背景 在MySQL数据库的日常运维中,随着业务需求的变化,我们经常需要对表结构进行修改,例如添加字段、调整列类型、重建索引等。这类操作通常通过 ALTER TABLE 语句实现。 然而,在早期版本(如MySQL 5.6之前)中,执行 ALTER TABLE 操作会锁表并重建整张表,导致在执行期间无法进行读写操作,尤其在大表场景下,锁表现象尤为明显,严重影响线上服务的可用性。 以一个典型场
原创 5月前
71阅读
对于中小型表且对锁表容忍度较高的场景,推荐使用 MySQL 原生的 Online DDL;对于大型表、高并发系统或不表结构变更的平滑过渡,最大程度减少对业务的影响。
原创 3月前
82阅读
     MySQL 大字段的DDL操作:加减字段、索引、修改字段属性等,在5.1之前都是非常耗时耗力的,特别是会对MySQL服务产生影响。在5.1之后随着Plugin Innodb的出现在线加索引的提高了很多,但是还会影响(时间缩短了),主要是出现了MDL锁。不过5.6可以避免上面的情况,但目前大部分在用的版本都是5.6之前的。工作原理:&nbs
原创 精选 2017-05-25 23:39:45
1396阅读
4点赞
pt-osc 文档使用说明pt-osc 文档使用说明功能介绍:工作原理:用法介绍举例功能介绍:在 alter 操作更改表结构的时候不⽤锁表,也就是说执⾏ alter 的时候不
原创 2022-02-13 15:43:24
167阅读
pt-osc 文档使用说明pt-osc 文档使用说明功能介绍:工作原理:用法介绍举例功能介绍:在 alter 操作更改表结构的时候不⽤锁表,也就是说执⾏ alter 的时候不会阻塞读写的操作 工作原理:创建一个你要执alter操作的表⼀样的空表结构,执行表结构的修改,然后从原表中 COPY 原始数据到表结构修改后的表,当数据 copy 完成以后就会将原表移走,用新表代替原表, 默认动作是将原表删
原创 2021-08-10 09:06:11
330阅读
MySQL DDL表结构变更,主要支持Online DDL和PT-OSC模式,但是即使知道两者的工作原理,在什么情况下选择什么模式新增
原创 2024-08-12 14:19:49
76阅读
# MySQL OSC MySQL OSC(Online Schema Change)是一种用于在线修改数据库模式(Schema)而无需对数据库进行停机维护的工具。它可以通过对表结构进行非阻塞的修改,实现数据库的在线演变和升级。本文将介绍MySQL OSC的原理、使用方法和示例。 ## 原理 在传统的数据库系统中,当需要修改表结构时,通常需要对表进行锁定以保证数据的一致性。这意味着在表结构修
原创 2023-12-06 08:07:52
54阅读
原文地址:http://seanlook.com/2016/05/27/mysql-pt-osc-add-primarykey/使用pt-online-schema-change做在线ddl最添加普通索引、列,修改列类型、添加默认值等使用比较常规,但涉及到要修改的是主键时就有点棘手。在我修改线上实例过程中,有这样的需求,不妨先思考一下怎么做才好:原表上有个复合主键,现在要添加一个自增id作为主键,
转载 2019-05-29 16:48:13
2570阅读
使用 pt-online-schema-change 做在线ddl最添加普通索引、列,修改列类型、添加默认值等使用比较常规,但涉及到要修改的是主键时就有点棘手。在我修改线上实例过程中,有这样的需求,不妨先思考一下怎么做才好:原表上有个复合主键,现在要添加一个自增id作为主键,如何进行会涉及到以下修改动作:删除复合主键定义 添加新的自增主键 原复合主键字段,修改成唯一索引如果你够聪明,应该会把这三个操作放在同一个 alter table 命令执行。percona手册里有两个地方对修改主键
转载 2021-08-10 09:45:14
209阅读
使用 pt-online-schema-change 做在线ddl最添加普通索引、列,修改列类型、添
转载 2022-02-13 14:34:29
138阅读
作者:张洛丹爱可生 DBA 团队成员,主要负责 MySQL 故障处理和公司自动化运维平台维护。对技术执着,为客户负.
原创 2022-12-20 15:13:41
514阅读
  • 1
  • 2
  • 3
  • 4
  • 5