DTS支持从RDS PG将数据实时同步到AnalyticDB for PG,用户可以很方便的搭建起RDS PG到AnalyticDB for PG的数据同步,轻松实现数据的流转和复杂查询的优化。
使用DTS的前提条件
- 要求同步的数据表,必须建有主键(通过主键来保证源端和目标端表记录一致性)。
- 支持(INSERT/UPDATE/DELETE)语句的数据同步,不支持DDL及其它DML 语句(TRUNCATE等)同步,不支持表结构的迁移,所以需要先手动进行表结构的迁移。
- 仅支持 RDS PG 9.4.8以上版本作为数据源同步,ECS搭建PG 及 线下PG到 ADB for PG 的数据同步,尚未支持。
- 不支持BIT、VARBIT、JSON、GEOMETRY、ARRAY、UUID、TSQUERY、TSVECTOR、TXID_SNAPSHOT类型的数据同步,建议 RDS PG 的JSON类型字段可以暂时同步为 ADB for PG 的 VARCHAR类型。
- 当使用数据传输服务进行 RDS PG迁移时,在不同迁移类型情况下,源跟目标数据库的迁移帐号权限要求如下:
迁移类型 | 全量迁移 | 增量数据同步 |
---|---|---|
源RDS PG实例 | 迁移对象的select | schema的owner |
目标AnalyticDB for PG实例 | schema的owner | schema的owner |
同步步骤
1、由于暂时不支持数据结构的迁移,所以需要先在AnalyticDB for PG中创建对应的database、schema、table结构。
2、创建DTS同步任务
- 进入DTS产品详情页( https://www.aliyun.com/product/dts ),点击“立即购买”
- 售卖页上进行各种配置,配置项说明如下表
配置项 | 说明 |
---|---|
功能 | 数据同步 |
源实例 | PostgreSQL |
源实例地域 | 本例选择华东1(杭州) |
目标实例 | AnalyticDB for PostgreSQL |
目标实例地域 | 本例选择华东1(杭州) |
同步拓扑 | 单向同步 |
网络类型 | 专线 |
同步链路规格 | 本例选择large |
- 在 确认订单 页面,勾选《数据传输服务(按量付费)服务协议》,根据提示完成支付流程。
3、 打开RDS PG的逻辑复制功能
由于RDS PG默认是没有打开逻辑复制功能的,所以需要在管理页面上打开逻辑复制,如下图
在“参数设置”栏中找到wal_level参数,将此参数值改为logical,特别注意,此参数修改需要重启实例才能生效,因此请评估对业务的影响,在合适的时间进行修改。
4、配置同步链路
- 登录DTS控制台(https://dts.console.aliyun.com)
- 在数据传输页面,单击左侧导航栏中的数据同步
- 在同步作业列表中,单击目标实例右侧的配置同步链路,在选择同步通道的源及目标实例页面进行参数配置
- 完成上述配置,单击授权白名单并进入下一步
- 进入选择同步对象页面,完成下面步骤配置后
-
完成上述操作后,单击预检查并启动,弹出预检查页面
- 如果预检查显示失败,可以根据提示DTS预检查进行排错处理。
- 预检查全部成功后,单击关闭。