ITPub博客

首页 > 数据库 > MySQL > pt-osc使用增量数据触发器的不足之处总结和推荐

pt-osc使用增量数据触发器的不足之处总结和推荐

原创 MySQL 作者:chenfeng 时间:2018-05-23 10:01:32 0 删除 编辑
pt-osc的原理如下:
1、创建一个和源表一样表结构的新表
2、在新表执行DDL语句
3、在源表创建三个触发器分别对应insert、update、delete操作
4、从源表拷贝数据到新表,拷贝过程中源表通过触发器把新的DML操作更新到新表中
5、rename源表到old表中,把新表rename为源表,最后删除源表

触发器的作用就是源表和新表之间的增量数据同步,不足之处总结如下:

因为触发器是用存储过程的步骤实现的,所以就无法避免存储过程本身需要的开销。
增大了同一个事务的执行步骤,更多的锁争抢。
整个过程无法暂停,假如发现影响主库性能,停止 Online DDL,那么下次就需要从头来过。
多个并行的操作是不安全的。
无法在生产环境做测试。
触发器和源操作还是在同一个事务空间。

备注:
推荐使用gh-ost工具做online DDL
gh-ost 首先连接到主库上,根据 alter 语句创建影子表,然后作为一个”备库“连接到其中一个真正的备库上,一边在主库上拷贝已有的数据到影子表,一边从备库上拉取增量数据的 binlog,然后不断的把 binlog 应用回主库。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/15498/viewspace-2154952/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
交流MySQL,PolarDB/PolarDB-X,PostgreSQL,MongoDB和Redis技术。

注册时间:2015-12-07

  • 博文量
    784
  • 访问量
    2690577