程序员茄子
全部
编程
代码
资讯
案例
综合
联系我们
DDL 相关技术文章
php
mysql
shell
go
vue
css
api接口对接
支付接口对接
pt-osc 中断之后:残留触发器、卡在 MDL 上的 DROP TRIGGER 与 3.6.0 的 --resume
编程
pt-osc 中断之后:残留触发器、卡在 MDL 上的 DROP TRIGGER 与 3.6.0 的 --resume
2026-10-20 00:03:55
pt-online-schema-change 被 kill 或 critical-load 中止后,原表会留下三个 pt_osc_* 触发器、一张拷了一半的 _table_new,以及 3.6.0 才有的 history 进度记录。本文讲残留物怎么核对清理、DROP TRIGGER 为什么会被 MDL 卡住一年(lock_wait_timeout 默认 31536000)、触发器没删却把新表 drop 造成 ERROR 1146 的失败顺序,以及 --history/--resume 的四个前提与局限。
pt-online-schema-change
MySQL
OnlineDDL
DDL
Percona
触发器
故障恢复
pt-online-schema-change 在线改表:1 条触发器硬约束、4 道安全阀与手动 swap 流程
编程
pt-online-schema-change 在线改表:1 条触发器硬约束、4 道安全阀与手动 swap 流程
2026-10-16 00:03:58
pt-online-schema-change 靠触发器把改表期间的增量同步到新表,再用原子 RENAME 换表,从而不锁原表。本文按官方文档梳理它为什么不锁表、外键四种处理方式、主键/触发器/复制/负载四道安全阀,以及 --alter 的硬约束与推荐的 dry-run 到手动 swap 上线流程。
在线改表
pt-online-schema-change
MySQL
OnlineDDL
DDL
Percona
触发器
gh-ost 改表不停写:binlog 追增量,两个连接抢 rename 完成 cut-over
编程
gh-ost 改表不停写:binlog 追增量,两个连接抢 rename 完成 cut-over
2026-10-15 01:39:38
gh-ost 用 binlog 订阅替代触发器做 MySQL 在线改表:幽灵表迁移 + 增量回放,两个连接抢 rename 完成原子 cut-over。含三种运行模式、硬约束(必须有主键、binlog_format=ROW)、关键参数与 dry-run 实操,以及和 pt-osc 在中断恢复、增量同步上的差异。
OnlineDDL
MySQL
gh-ost
DDL
在线改表
binlog
cut-over
数据库
gh
触发器
MySQL 加字段为什么有时秒级、有时锁表:INSTANT / INPLACE / COPY 怎么选
编程
MySQL 加字段为什么有时秒级、有时锁表:INSTANT / INPLACE / COPY 怎么选
2026-10-14 23:35:48
同样一句 ALTER TABLE,加字段秒级完成,改字段类型却可能锁表几小时。本文拆清 INSTANT / INPLACE / COPY 三种算法怎么选、cloud 厂商对在线改类型的补丁与限制,以及大表该用 pt-osc 还是 gh-ost。
字段变更
MySQL
OnlineDDL
表结构变更
DDL
数据库
gh-ost
gh
ALTER TABLE 卡在 Waiting for table metadata lock:改表前的三处预查与执行参数
编程
ALTER TABLE 卡在 Waiting for table metadata lock:改表前的三处预查与执行参数
2026-09-23 21:31:58
线上 ALTER TABLE 卡在 Waiting for table metadata lock,往往不是 DDL 本身慢,而是前面有长事务占着 MDL。本文给出改表前的三处预查(innodb_trx 长事务、performance_schema.metadata_locks 持锁线程、INNODB_TABLES.TOTAL_ROW_VERSIONS 判断 INSTANT 上限)、执行参数(短 lock_wait_timeout 与显式 ALGORITHM/LOCK),以及 MDL 与行锁两套超时参数的区别,和主从延迟观察要点。
MySQL
InnoDB
DDL
元数据锁
运维
报表
MySQL 8.4.9 里那个会吃满磁盘的 InnoDB 修复:Bug #38370155
代码
MySQL 8.4.9 里那个会吃满磁盘的 InnoDB 修复:Bug #38370155
2026-09-04 21:03:57
MySQL 8.4.9 LTS 修复 Bug #38370155:高 innodb_parallel_read_threads 时 CREATE INDEX 会吃满磁盘,严重可致实例故障。文章给自查条件、SELECT @@innodb_parallel_read_threads 排查、升级与调参建议,并顺带列出同版虚拟列 LOCK=NONE、FTS 内存等维护点。
MySQL
InnoDB
运维
DDL
大家都在搜索什么?
devops
易支付
一个官网+多少钱
统一接受回调
统一回调
python
sub
node
宝塔日志
mysql
shell
ElasticSearch
css
vue
api接口对接
2025
支付接口对接
go
php
php回调