使用DTS从RDS PG实时同步数据到AnalyticDB for PostgreSQL

简介: DTS支持从RDS PG将数据实时同步到AnalyticDB for PG,用户可以很方便的搭建起RDS PG到AnalyticDB for PG的数据同步,轻松实现数据的流转和复杂查询的优化。使用DTS的前提条件要求同步的数据表,必须建有主键(通过主键来保证源端和目标端表记录一致性)。

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同步任务

配置项 说明
功能 数据同步
源实例 PostgreSQL
源实例地域 本例选择华东1(杭州)
目标实例 AnalyticDB for PostgreSQL
目标实例地域 本例选择华东1(杭州)
同步拓扑 单向同步
网络类型 专线
同步链路规格 本例选择large
  • 确认订单 页面,勾选《数据传输服务(按量付费)服务协议》,根据提示完成支付流程。

3、 打开RDS PG的逻辑复制功能

由于RDS PG默认是没有打开逻辑复制功能的,所以需要在管理页面上打开逻辑复制,如下图pggp02
在“参数设置”栏中找到wal_level参数,将此参数值改为logical,特别注意,此参数修改需要重启实例才能生效,因此请评估对业务的影响,在合适的时间进行修改。

4、配置同步链路

  1. 登录DTS控制台(https://dts.console.aliyun.com)
  2. 数据传输页面,单击左侧导航栏中的数据同步
  3. 在同步作业列表中,单击目标实例右侧的配置同步链路,在选择同步通道的源及目标实例页面进行参数配置pggp03
  4. 完成上述配置,单击授权白名单并进入下一步
  5. 进入选择同步对象页面,完成下面步骤配置后pggp04
  6. 完成上述操作后,单击预检查并启动,弹出预检查页面

    1. 如果预检查显示失败,可以根据提示DTS预检查进行排错处理。
    2. 预检查全部成功后,单击关闭。

返回DTS控制台,在同步列表中的同步概况中查看同步延迟和速度

相关实践学习
数据库实验室挑战任务-初级任务
本场景介绍如何开通属于你的免费云数据库,在RDS-MySQL中完成对学生成绩的详情查询,执行指定类型SQL。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
14天前
|
缓存 NoSQL 关系型数据库
13- Redis和Mysql如何保证数据⼀致?
该内容讨论了保证Redis和MySQL数据一致性的几种策略。首先提到的两种方法存在不一致风险:先更新MySQL再更新Redis,或先删Redis再更新MySQL。第三种方案是通过MQ异步同步以达到最终一致性,适用于一致性要求较高的场景。项目中根据不同业务需求选择不同方案,如对一致性要求不高的情况不做处理,时效性数据设置过期时间,高一致性需求则使用MQ确保同步,最严格的情况可能涉及分布式事务(如Seata的TCC模式)。
40 6
|
21天前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
轻松入门MySQL:保障数据完整性,MySQL事务在进销存管理系统中的应用(12)
|
28天前
|
关系型数据库 MySQL
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
elasticsearch对比mysql以及使用工具同步mysql数据全量增量
21 0
|
1月前
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
Mybatis+mysql动态分页查询数据案例——测试类HouseDaoMybatisImplTest)
21 1
|
1月前
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
Mybatis+mysql动态分页查询数据案例——条件类(HouseCondition)
15 1
|
1月前
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
Mybatis+mysql动态分页查询数据案例——房屋信息的实现类(HouseDaoMybatisImpl)
22 2
|
1月前
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
Mybatis+mysql动态分页查询数据案例——工具类(MybatisUtil.java)
15 1
|
2天前
|
存储 数据可视化 关系型数据库
MySQL字段的时间类型该如何选择?千万数据下性能提升10%~30%🚀
本文探讨MySQL中时间类型的选择,阐述datetime、timestamp、整形时间戳等类型特点以及它们在千万级数据量下的查询性能
MySQL字段的时间类型该如何选择?千万数据下性能提升10%~30%🚀
|
8天前
|
SQL 关系型数据库 MySQL
关系型数据库插入数据的语句
使用SQL的`INSERT INTO`语句向关系型数据库的`students`表插入数据。例如,插入一个`id`为1,`name`为'张三',`age`为20的记录:`INSERT INTO students (id, name, age) VALUES (1, '张三', 20)。如果`id`自增,则可简化为`INSERT INTO students (name, age) VALUES ('张三', 20)`。
10 2
|
8天前
|
SQL 存储 Oracle
关系型数据库查询数据的语句
本文介绍了关系型数据库中的基本SQL查询语句,包括选择所有或特定列、带条件查询、排序、分组、过滤分组、表连接、限制记录数及子查询。SQL还支持窗口函数、存储过程等高级功能,是高效管理数据库的关键。建议深入学习SQL及相应数据库系统文档。
9 2

相关产品

  • 云数据库 RDS PostgreSQL 版