华为云数据库迁移技术DRS探秘: PostgreSQL数据同步
PostgreSQL数据库的同步有物理复制和逻辑复制2种,本文重点介绍逻辑复制的同步。
一、什么是PostgreSQL逻辑复制
逻辑复制是PostgreSQL 10重量级新特性,实际上从2014年发布的9.4版本开始,PostgreSQL就支持逻辑复制了。它兼顾有基于触发器复制技术的灵活性,同时又有基于日志复制技术的高效性,它使用发布/订阅模型对选择性的数据复制相对物理复制来说是非常高效的方法。
二、逻辑复制应用场景
可基于表级别复制,是一种粒度可细的复制, 可将数据库的变化实时转移至其他系统,主要场景如下:
1、满足企业业务上需求,实现某些指定库数据同步
2、满足报表统计需要,可以从各系统采集原始数据,聚集并汇总生成报表数据
3、PostgreSQL跨版本数据同步,可以支持从PostgreSQL9.4同步到最新的增强版
三、逻辑复制约束
使用发布者/订阅者模型,使用订阅复制槽技术,可并行的传输WAL日志,通过在订阅端回放WAL日志中的逻辑条目,保持复制表的数据同步,有如下几个约束:
1、需要将数据库的wal_level配置为logical。
2、要复制的表都必须要有主键约束。
3、源库有表结构变更,则必须手工在目标库执行表结构变更。
四、使用华为云的数据复制服务的PostgreSQL同步功能
目前华为云的数据复制服务已开放PostgreSQL同步功能,可以从华为云的PostgreSQL实例同步到另外的PostgreSQL实例,在满足上述约束的情况下,在数据复制服务仅需要操作5个步骤即可完成PostgreSQL数据库的同步功能。
1.选择PostgreSQL同步场景
2.配置PostgreSQL源库和目标库的连接信息
3.选择需要同步的数据库
4.系统自动做PostgreSQL同步前的预检查
5.预检查完成后即可启动任务开始同步数据
6.查询同步进度和数据对比结果
想了解更多信息,请扫码关注【HW云数据库】
- 点赞
- 收藏
- 关注作者
评论(0)