活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      文档中心

      数据库复制

      数据库复制

        • 产品动态
        • 产品简介
        • 产品定义
        • 产品优势
        • 产品功能
        • 实时迁移
        • 备份迁移
        • 实时同步
        • 实时灾备
        • 数据类型映射关系
        • 应用场景
        • 相关术语解释
        • 与其他服务关系
        • 计费说明
        • 资源节点
        • 产品规格
        • 计费方式
        • 产品价格
        • 购买
        • 实例生命周期
        • 用户指南
        • 实时迁移
        • 入云
        • 将MySQL迁移到MySQL
        • 将MySQL迁移到DRDS
        • 将MySQL分库分表迁移到DRDS
        • 将MongoDB迁移到DDS
        • 出云
        • 将MySQL迁移到MySQL
        • 将DDS迁移到MongoDB
        • 任务管理
        • 创建迁移任务
        • 查询迁移进度
        • 查看迁移日志
        • 对比迁移项
        • 对象管理
        • 迁移用户
        • 参数对比列表
        • 任务管理
        • 查看任务详情
        • 修改任务信息
        • 修改迁移信息
        • 编辑迁移任务
        • 续传迁移任务
        • 重置迁移任务
        • 暂停迁移任务
        • 结束迁移任务
        • 删除迁移任务
        • 任务状态说明
        • 备份迁移
        • 迁移方案概览
        • 创建RDS备份迁移任务
        • 创建OBS自建桶备份迁移任务
        • 任务管理
        • 查看任务详情
        • 修改任务信息
        • 查看迁移日志
        • 删除迁移任务
        • 任务状态说明
        • 实时同步
        • 数据同步拓扑介绍
        • 入云
        • 将MySQL同步到MySQL
        • 将PostgreSQL同步到PostgreSQL
        • 将Oracle同步到MySQL
        • 将Oracle同步到DRDS
        • 将Oracle同步到PostgreSQL
        • 将DRDS同步到DRDS
        • 将DRDS同步到MySQL
        • 将MySQL同步到DWS
        • 将Oracle同步到DWS
        • 将MongoDB同步到DDS
        • 出云
        • 将MySQL同步到MySQL
        • 自建到自建
        • 将MySQL同步到Kafka
        • 将Oracle同步到Kafka
        • 任务管理
        • 创建同步任务
        • 查询同步进度
        • 查看同步日志
        • 对比同步项
        • 对象管理
        • 编辑同步对象
        • 对象名映射
        • 查看同步映射
        • 数据加工
        • 任务生命周期
        • 查看任务详情
        • 修改任务信息
        • 修改同步信息
        • 编辑同步任务
        • 续传同步任务
        • 暂停同步任务
        • 重置同步任务
        • 修改流速模式
        • 结束同步任务
        • 删除同步任务
        • 任务状态说明
        • 同步场景操作参考
        • Kafka消息格式
        • Kafka认证方式
        • PostgreSQL为源强制结束任务
        • 通过创建触发器和函数实现PostgreSQL增量DDL同步
        • 实时灾备
        • 灾备场景
        • MySQL到MySQL灾备
        • 任务管理
        • 创建灾备任务
        • 查询灾备进度
        • 查看灾备日志
        • 对比灾备项
        • 任务生命周期
        • 查看灾备数据
        • 修改任务信息
        • 编辑灾备任务
        • 续传灾备任务
        • 暂停灾备任务
        • 结束灾备任务
        • 删除灾备任务
        • 查看灾备监控
        • 主备倒换任务
        • 修改流速模式
        • 任务状态说明
        • 快速入门
        • 创建数据库复制 实时迁移
        • 概述
        • 入云迁移使用须知
        • MySQL->RDS for MySQL
        • MySQL->DRDS
        • MySQL分库分表->DRDS
        • MongoDB->DDS
        • PostgreSQL->RDS for PostgreSQL
        • 出云迁移使用须知
        • RDS for MySQL-> MySQL
        • DDS实例-> MongoDB
        • 步骤一(1):创建入云迁移任务
        • 步骤一(2):创建出云迁移任务
        • 步骤二:查询迁移进度
        • 步骤三:查看迁移日志
        • 步骤四:对比迁移项
        • 参考:任务状态含义
        • 创建数据库复制 备份迁移
        • 使用须知
        • 场景一:创建RDS全量备份迁移任务
        • 场景二:创建OBS自建桶迁移任务
        • 参考:任务状态含义
        • 创建数据库复制 实时同步
        • 概述
        • 使用须知
        • 步骤一:创建同步任务
        • 步骤二:查询同步任务
        • 步骤三:查看同步日志
        • 步骤四:对比同步项
        • 参考:任务状态含义
        • 创建数据库复制 实时灾备
        • 概述
        • 使用须知
        • 步骤一:创建灾备任务
        • 步骤二:查询灾备进度
        • 步骤三:查看灾备日志
        • 步骤四:对比灾备项
        • 参考:任务状态含义
        • 最佳实践
        • 最佳实践汇总
        • 跨云数据库实时迁移
        • MySQL数据库迁移
        • MongoDB数据库迁移
        • ECS自建数据库迁移至云上DDS、RDS实例
        • ECS自建MongoDB迁移DDS
        • ECS自建MySQL迁移RDS实例
        • 本地数据库实时迁移
        • MySQL数据库迁移
        • MongoDB数据库迁移
        • 本地Microsoft SQL Server备份迁移到云上RDS for SQL Server实例
        • 场景介绍
        • 迁移准备
        • 导出数据库备份文件
        • 上传备份文件
        • 场景:全量备份迁移
        • 场景:全量+增量备份迁移
        • 手动配置信息
        • 常见问题
        • 产品咨询类
        • 计费类
        • 购买类
        • 操作类
        • 网络及安全
        • 权限管理
        • 实时迁移
        • 备份迁移
        • 实时同步
        • 实时灾备
        • 数据对比
        • 通用操作类问题
        • 时延相关
        • 文档下载
        • 文档下载
        • 相关协议
        • 数据库复制产品服务协议
          无相关产品

          本页目录

          帮助中心数据库复制用户指南实时同步入云将PostgreSQL同步到PostgreSQL
          将PostgreSQL同步到PostgreSQL
          更新时间 2024-10-23 15:38:27
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          最近更新时间: 2024-10-23 15:38:27
          分享文章
          • 新浪微博
          • 微信
            扫码分享
          • 复制链接
          本章节介绍如何将PostgreSQL同步到PostgreSQL。

          支持的源和目标数据库

          支持的数据库

          源数据库

          目标数据库

          l 本地自建数据库(PostgreSQL 9.4、9.5、9.6、10、11、12、13、14版本)

          l ECS自建数据库(PostgreSQL 9.4、9.5、9.6、10、11、12、13、14版本)

          l 其他云上数据库(PostgreSQL 9.4、9.5、9.6、10、11、12、13、14版本)

          l RDS for PostgreSQL(9.5、9.6、10、11、12、13、14版本)

          RDS for PostgreSQL(9.5、9.6、10、11、12、13、14版本)

          说明
          仅支持目标库大版本等于或高于源库大版本。


           

          支持的同步对象范围

          在使用DRS进行同步时,不同类型的同步任务,支持的同步对象范围不同,详细情况可参考下表。 DRS会根据用户选择,在“预检查”阶段对同步对象进行自动检查 。

          表 支持的同步对象

          类型名称

          使用须知

          同步对象范围

          l 不支持实例级同步:每次至多同步一个库(database),同步多个库需要使用多个DRS任务。

          l 支持的字段类型:

          数字类型、货币类型、字符类型、二进制数据类型、日期/时间类型、布尔类型、枚举类型、几何类型、网络地址类型、位串类型、文本搜索类型、UUID类型、XML类型、JSON类型、数组、复合类型、范围类型。

          l 全量同步的范围:

          支持:模式、表、索引、约束、视图、物化视图、序列、存储过程、规则、触发器、外键、排序规则、插件、编码转换信息、聚合函数、操作符、统计扩展、转换信息、文本搜索配置、函数、数据类型、类型转换、用户、事件触发器、文本搜索解析器、文本搜索模板的同步。

          表级同步时,仅支持表、视图、物化视图、序列、用户的同步。

           不支持系统模式(“pg_”开头的任何模式、“information_schema”、“sys”、“utl_raw”、“dbms_lob”、“dbms_output”和“dbms_random”)、系统表、系统用户、表空间、外部数据包装器、外部服务器、用户映射、发布、订阅等其他对象。

          说明
          支持同步的对象有如下限制:
          • 对象名称:库名不可以包含+"%'\<>,模式名和表名不可以包含".'<>,列名不可以包含"和'。

          • 表:不同步临时表。表级同步时,表的约束、索引及规则会一起同步,表的触发器不会同步。

          • 模式:不同步public模式的权限。表级同步时,会同步目标库已存在模式的权限。

          • 函数:不同步C语言函数,不同步带有leakproof属性或带有support属性的函数。

          • 插件:不同步插件的元数据。

          • 数据类型:不同步基本数据类型。

          • 类型转换:不同步二进制强制型的类型转换。

          • 事件触发器:受限于目标库版本,仅目标库为RDS for PostgreSQL 11.11及以上版本时支持。

          • 文本搜索解析器:受限于目标库版本,仅目标库为RDS for PostgreSQL 11.11及以上版本时支持。

          • 文本搜索模板:受限于目标库版本,仅目标库为RDS for PostgreSQL 11.11及以上版本时支持。

          • 用户:不同步目标库已存在的用户,不同步用户的superuser属性、replication属性、bypassrls属性,不同步superuser用户的成员关系。对象owner/grantor为superuser用户时,不同步它的owner/grantor。目标库为RDS for PostgreSQL时,要同步用户的密码不能包含用户名。表级同步时,不同步源库用户的默认访问权限。


          l 增量同步的范围:

           支持部分DML(Data Manipulation Language):包括INSERT、UPDATE、DELETE。

           支持部分DDL(Data Define Language):包括TRUNCATE(仅PostgreSQL 11及以上版本支持)、CREATE SCHEMA、CREATE TABLE、DROP TABLE、ALTER TABLE(包含ADD COLUMN、DROP COLUMN、ALTER COLUMN、RENAME COLUMN、ADD CONSTRAINT、DROP CONSTRAINT、RENAME)、CREATE SEQUENCE、DROP SEQUENCE、ALTER SEQUENCE、CREATE INDEX、ALTER INDEX、DROP INDEX、CREATE VIEW、ALTER VIEW。

          表级同步时,DDL仅支持TRUNCATE(仅PostgreSQL 11及以上版本支持)、DROP TABLE 、ALTER TABLE,其中ALTER TABLE支持:ADD COLUMN、DROP COLUMN、ALTER COLUMN、RENAME COLUMN、ADD CONSTRAINT、DROP CONSTRAINT、RENAME。

           不支持:无日志表(UNLOGGED TABLE)的DML,临时表的DML。

          说明
          同步DDL的实现原理:在源库通过事件触发器捕获DDL语句,并且记录在特定的表中,因此需要提前在源库创建事件触发器、函数等。详细操作可参考通过创建触发器和函数实现PostgreSQL增量DDL同步。


          数据库帐号权限要求

          在使用DRS进行同步时,连接源库和目标库的数据库帐号需要满足以下权限要求,才能启动实时同步任务。不同类型的同步任务,需要的帐号权限也不同,详细可参考下表进行赋权。DRS会在“预检查”阶段对数据库帐号权限进行自动检查,并给出处理建议。

          说明
           建议创建单独用于DRS任务连接的数据库帐号,避免因为数据库帐号密码修改,导致的任务连接失败。
          连接源或目标数据库的帐号密码修改后,请尽快修改连接信息,避免任务连接失败后自动重试,导致数据库帐号被锁定影响使用。

          表数据库帐号权限

          类型名称

          全量同步

          全量+增量同步

          源数据库连接帐号

          数据库的CONNECT权限,模式的USAGE权限,表的SELECT权限,序列的SELECT权限,系统表pg_catalog.pg_authid的select权限(用于同步用户的密码)。

          数据库的CONNECT权限,模式的USAGE权限,表的SELECT权限,序列的SELECT权限,系统表pg_catalog.pg_authid的SELECT权限(用于同步用户的密码),无主键表的UPDATE、DELETE和TRUNCATE权限,REPLICATION连接权限。

          说明

           无主键表的UPDATE、DELETE和TRUNCATE权限,仅用于对无主键表短暂加锁,以确保迁移后,目标库中无主键表数据与源库保持一致。

           REPLICATION连接权限的添加方法:

          在源数据库的“pg_hba.conf”配置文件的所有配置前增加一行配置“host replication/32 md5”;

          在源库使用SUPERUSER用户执行语句“select pg_reload_conf();”生效,或重启数据库实例生效。



          目标数据库连接帐号

          l 库级同步:需要具有CREATEDB权限。

          l 表级同步:

           如果需要同步库,需要具有CREATEDB权限。

          如果需要同步模式,需要具有模式所在库的CONNECT权限、模式所在库上的CREATE权限。

           如果需要同步模式下的对象,需要具有模式所在库的CONNECT权限、对象所在模式的USAGE权限、对象所在模式上的CREATE权限。

          l 同步用户:需要具有CREATEROLE权限。

          l 同步用户权限:同步用户的default privilege需要为系统默认值,否则可能导致目标库与源库的对象权限不一致。

          说明
          同步事件触发器、文本搜索解析器、文本搜索模版时,不仅要求目标库版本为RDS for PostgreSQL 11.11及以上,还要求目标库连接用户为root用户或root用户的成员。


          使用建议

          注意

          • DRS任务启动和全量数据同步阶段,请不要在源数据库执行DDL操作,否则可能导致任务异常。
          • 为保证同步前后数据一致性,确保同步期间目标数据库无业务写入。
          • 数据库同步与环境多样性和人为操作均有密切关系,为了确保同步的平顺,建议您在进行正式的数据库同步之前进行一次演练,可以帮助您提前发现问题并解决问题。
          • 基于以下原因,建议您在启动任务时选择“稍后启动”功能,将启动时间设置在业务低峰期,相对静止的数据可以有效提升一次性同步成功率,避免同步对业务造成性能影响。
            • 在网络无瓶颈的情况下,全量同步会对源数据库增加约50MB/s的查询压力,以及占用2~4个CPU。
            • 同步无主键表时,为了确保数据一致性,会存在3s以内的单表级锁定。
            • 正在同步的数据被其他事务长时间锁死,可能导致读数据超时。
            • DRS并发读取数据库,会占用大约6-10个session连接数,需要考虑该连接数对业务的影响
            • 全量阶段读取表数据时,特别是大表的读取,可能会阻塞业务上对大表的独占锁操作。
          • 数据对比

          建议您结合数据对比的“稍后启动”功能,选择业务低峰期进行数据对比,以便得到更为具有参考性的对比结果。由于同步具有轻微的时差,在数据持续操作过程中进行对比任务,可能会出现少量数据不一致对比结果,从而失去参考意义。

          使用须知

          DRS全量+增量同步过程一般包含四个阶段:任务启动阶段、全量阶段、增量阶段、结束任务阶段(单增量和单全量任务则包含三个阶段)。为了确保同步各个阶段的平顺,在创建同步任务前,请务必阅读以下使用须知。

          表 使用须知

          类型名称

          使用和操作约定

          任务启动前使用须知

          l 源数据库参数要求:

           源数据库的分区表触发器不可以设置为disable。

          全量同步支持源库备机状态,但需要设置hot_standby_feedback为on;增量同步不支持源库备机状态。

           若要做增量同步:

          源数据库的“pg_hba.conf” 文件中包含如下的配置:

          host replication all 0.0.0.0/0 md5

          源数据库参数wal_level必须配置为logical;

          源数据库需提前安装test_decoding插件;

          源数据库中无主键表的replica identity属性必须为full;

          源数据库的max_replication_slots参数值必须大于当前已使用的复制槽数量;

          源数据库的max_wal_senders参数值必须等于或大于max_replication_slots参数值。

          源数据库中表的主键列toast属性为main、external、extended时,其replica identity属性必须为full。

          l 源数据库对象要求:

           源库中不可以存在同名的触发器。

           同步对象依赖和关联的对象也须一起同步,否则可能导致同步失败。

          l 目标数据库参数要求:

           目标数据库的block_size参数值必须大于或等于源库中的对应参数值。

          目标数据库和源数据库的lc_monetary参数值一致。

           若要做增量同步,且同步对象包含外键、触发器或事件触发器,则目标数据库的session_replication_role参数必须设置为replica,同步结束后,此参数需改为origin。

          l 目标数据库对象要求:

           目标库不可以包含,与待同步对象类型相同且名称相同的对象,包括库、模式、表等。系统库、系统模式、系统表等除外。

           支持目标数据库中的表比源数据库多列场景,但是需要避免以下场景可能导致的任务失败。

          目标端多的列要求非空且没有默认值,源端insert数据,同步到目标端后多的列为null,不符合目标端要求。

          目标端多的列设置固定默认值,且有唯一约束。源端insert多条数据后,同步到目标端后多的列为固定默认值,不符合目标端要求。

          l 其他使用须知:

           模式名或表名映射时,为防止索引和约束名冲突,同步后表上的原索引名称将变为此格式:i_+哈希值+原索引名(可能被截断)+_key。其中哈希值由“原模式名_原表名_原索引名”计算得到。同理,表上的原约束名将变为:c_+哈希值+原约束名(可能被截断)+_key。

          对于全量+增量和增量任务,启动前请确保源库中未启动长事务,启动长事务会阻塞逻辑复制槽的创建,进而引发任务失败。

           对于全量+增量和增量任务,如果预校验存在“内部错误”且在任务未启动时结束,请参考PostgreSQL为源强制结束任务章节检查并删除流复制槽,防止源库中流复制槽残留。

           若选择同步DDL,须注意源库执行DDL时,确保在目标库上是兼容的。

          说明

          同步DDL的实现原理是:在源库通过事件触发器捕获DDL语句,并且记录在特定的表中,然后将DDL语句同步至目标库。因此启动任务前,需要提前在源库创建事件触发器、函数等。详细操作可参考通过创建触发器和函数实现PostgreSQL增量DDL同步。


          全量同步过程使用须知

          l 请勿修改源库和目标库的端口号,请勿修改、删除源库和目标库连接用户的密码、权限,否则可能导致任务失败。

          l 请勿在源库执行任何DDL,否则可能导致数据不一致或任务失败。

          l 请勿在目标库做写入操作,否则可能导致数据不一致。

          增量同步过程使用须知

          l 请勿修改源库和目标库的端口号,请勿修改、删除源库和目标库连接用户的密码、权限,否则可能导致任务失败。

          l 请勿修改源数据库表的主键或者唯一键(主键不存在时),否则可能导致增量数据不一致或任务失败。

          l 请勿修改源数据库中表的replica identity属性,否则可能导致增量数据不一致或任务失败。

          l 请勿在目标库做写入操作,否则可能导致数据不一致。

          l 库级同步时,源库新增无主键表时,请务必同时将该无主键表的replica identity属性设置为full,然后再写入数据,否则可能导致数据不一致或任务失败。

          l 库级同步时,源库新增主键表时,如果主键列toast属性为main、external、extended时,请务必同时将该表的replica identity属性设置为full,然后再写入数据,否则可能导致数据不一致或任务失败。

          同步对比使用须知

          l 建议在源库的业务低峰期进行数据比对,防止误报不一致数据,以及减少对源库和DRS任务的冲击。

          l 在增量同步过程中做对比时,源库若存在写入,则对比结果可能不一致。

          l 不支持在全量同步过程中做对比。

          l 不支持数据对比过程中做限速。

          结束任务使用须知

          l 正常结束任务:

           将自动重置目标库序列值(自增序列值为源库序列值+安全余度,自减序列值为源库序列值-安全余度,安全余度默认为10000),若选择了同步用户,任务结束时将自动同步用户的成员关系。

           全量+增量实时同步任务正常结束时,将自动删除任务在源库创建的流复制槽。

           全量+增量实时同步任务正常结束时,如果目标库session_replication_role值为replica,需手动将目标库session_replication_role参数值修改为origin。

          l 强制结束任务:

           需要手动刷新目标库中的序列值,可参考PostgreSQL为源强制结束任务章节的指导进行操作。

           强制结束全量+增量实时同步任务,需要手动删除源库可能残留的复制槽,可参考PostgreSQL为源强制结束任务章节的指导进行操作。

          强制结束全量+增量实时同步任务,如果目标库session_replication_role值为replica,需手动将目标库session_replication_role参数值修改为origin。

          前提条件

          • 已登录数据复制服务控制台。
          • 满足实时同步支持的数据库类型和版本,详情请参见实时同步。
          • 已阅读以上使用建议和使用须知。

          操作步骤

          本小节以PostgreSQL->PostgreSQL的入云同步为示例,介绍如何使用数据复制服务配置VPC网络场景下的实时同步任务。

          步骤 1 在“实时同步管理”页面,单击“创建同步任务”。

          步骤 2 在“同步实例”页面,填选任务名称、描述、同步实例信息,单击“开始创建”。

          • 任务信息

          表 任务和描述

          参数 描述
          任务名称 任务名称在4到50位之间,必须以字母开头,可以包含字母、数字、中划线或下划线,不能包含其他的特殊字符。
          描述 描述不能超过256位,且不能包含! = < > & ' " \ 特殊字符。
          • 同步实例信息

          表同步实例信息

          参数 描述
          数据流动方向 选择“入云”。
          源数据库引擎 选择“PostgreSQL”。
          目标数据库引擎 选择“PostgreSQL” 。
          网络类型 此处以“VPC网络”为示例,可选公网网络、VPC网络和VPN、专线网络。
          目标数据库实例 目标数据库为RDS for PostgreSQL数据库实例。
          同步实例所在子网 请选择同步实例所在的子网。也可以单击“查看子网”,跳转至“网络控制台”查看实例所在子网帮助选择。默认值为当前所选数据库实例所在子网,请选择有可用IP地址的子网。为确保同步实例创建成功,仅显示已经开启DHCP的子网。
          IP类型 选择迁移实例的IP类型,目前支持选择“IPv4”或“IPv4&IPv6双栈”。只有所选择的VPC及子网都开启了IPv6双栈功能,才能选择IP类型为“IPv4&IPv6双栈”。
          同步模式 全量+增量:该模式为数据持续性实时同步,通过全量过程完成目标端数据库的初始化后,增量同步阶段通过解析日志等技术,将源端和目标端数据保持数据持续一致。
          全量该模式为数据库一次性同步,适用于可中断业务的数据库同步场景,全量同步将非系统数据库的全部数据库对象和数据一次性同步至目标端数据库。
          • 标签

          表标签

          参数 描述
          标签 可选配置,对同步任务的标识。使用标签可方便管理您的任务。每个任务最多支持10个标签配额。
          任务创建成功后,您可以单击任务名称,在“标签”页签下查看对应标签。关于标签的详细操作,请参见标签管理。
          说明
          对于创建失败的任务,DRS默认保留3天,超过3天将会自动结束任务。

          步骤 3 在“源库及目标库”页面,同步实例创建成功后,填写源库信息和目标库信息,单击“源库和目标库”处的“测试连接”,分别测试并确定与源库和目标库连通后,勾选协议,单击“下一步”。

          测试连接时需要确保DRS任务与源库、目标库的连通性。

          • 网络连通性: 确保源库和目标库允许DRS访问,通常至少需要放通DRS的IP。公网网络的DRS任务放通DRS的公网IP,VPC网络、VPN、专线网络的DRS任务放通DRS的内网IP。
          • 帐号连通性 :确保源库和目标库允许DRS通过连接帐号和密码访问。
          说明
          此处源库类型分为ECS自建库和RDS实例,需要根据源数据库的实际来源选择相应的分类。两种场景下的参数配置不一样,需要根据具体场景进行配置。
          • 场景一:ECS自建库源库信息配置

          表 ECS自建库场景源库信息

          参数 描述
          源库类型 选择“ECS自建库”。
          VPC 源数据库实例所在的虚拟专用网络,可以对不同业务进行网络隔离。您需要创建或选择所需的虚拟私有云。
          子网 通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全。子网在可用分区内才会有效,创建源数据库实例的子网需要开启DHCP功能,在创建过程中也不能关闭已选子网的DHCP功能。
          IP地址或域名 源数据库的IP地址或域名。
          端口 源数据库服务端口,可输入范围为1~65535间的整数。
          指定数据库名称 选择是否指定数据库,开启后需手动输入数据库名称。
          数据库用户名 源数据库的用户名。
          数据库密码 源数据库的用户名所对应的密码。
          SSL安全连接 通过该功能,用户可以选择是否开启对同步链路的加密。
          说明

          源数据库的IP地址或域名、数据库用户名和密码,会被系统加密暂存,直至删除该迁移任务后自动清除。

          • 场景二:RDS实例源库信息配置

          表RDS实例场景源库信息

          参数 描述
          源库类型 选择“RDS实例”。
          数据库实例名称 选择待同步的关系型PostgreSQL数据库实例作为源数据库实例。
          数据库用户名 源数据库实例的用户名。
          数据库密码 源数据库的用户名所对应的密码。

          表 目标库信息

          参数 描述
          数据库实例名称 默认为创建迁移任务时选择的关系型PostgreSQL数据库实例,不可进行修改。
          数据库用户名 目标数据库的用户名。
          数据库密码 目标数据库的用户名所对应的密码。
          说明
          源和目标数据库用户名和密码将在同步过程中被加密暂存到数据库和同步实例主机上,待该任务删除后会永久清除。

          在“设置同步”页面,选择同步对象和同步用户,单击“下一步”。

          表 同步对象

          参数

          描述

          流速模式

          流速模式支持限速和不限速,默认为不限速。

          l 限速

          自定义的最大同步速度,全量同步过程中的同步速度将不会超过该速度。

          当流速模式选择了“限速”时,你需要通过流速设置来定时控制同步速度。流速设置通常包括限速时间段和流速大小的设置。默认的限速时间段为“全天限流”,您也可以根据业务需求选择“时段限流”。自定义的时段限流支持最多设置3个定时任务,每个定时任务之间不能存在交叉的时间段,未设定在限速时间段的时间默认为不限速。

          流速的大小需要根据业务场景来设置,不能超过9999MB/s。

          l 不限速

          对同步速度不进行限制,通常会最大化使用源数据库的出口带宽。该流速模式同时会对源数据库造成读消耗,消耗取决于源数据库的出口带宽。比如源数据库的出口带宽为100MB/s,假设高速模式使用了80%带宽,则同步对源数据库将造成80MB/s的读操作IO消耗。

          说明

          l 限速模式只对全量阶段生效,增量阶段不生效。

          l 您也可以在创建任务后修改流速模式。具体方法请参见修改流速模式。

          增量阶段冲突策略

          该冲突策略特指增量同步中的冲突处理策略,全量阶段的冲突默认忽略。冲突策略目前支持如下形式:

          l 忽略

          当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将跳过冲突数据,继续进行后续同步。

          l 报错

          当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),同步任务将失败并立即中止。

          l 覆盖

          当同步数据与目标数据库已有数据冲突时(主键/唯一键存在重复等),将覆盖原来的冲突数据。

          对象同步范围

          对象同步范围支持选择普通索引、增量DDL同步和全量阶段填充物化视图,您可以根据业务需求选择是否进行同步。

          全量阶段填充物化视图:仅对源库已经填充的物化视图生效,该填充操作会影响全量同步性能,建议在全量同步完成后,手动在目标库填充。

          同步对象

          左侧框是源数据库对象,右侧框是已经选择的对象,同步对象支持表级同步、库级同步,您可以根据业务场景选择对应的数据进行同步。

          l 选择库级同步:全量同步时,同步对象为所选的库、库中对象的存量数据;增量同步时,同步除了无日志表、临时表外的所有表的DML及部分DDL。

          l 选择表级同步:全量同步时,同步对象为所选的表、序列、视图或物化视图的存量数据;增量同步时,同步所选表的DML及部分DDL。

          l 在同步对象右侧已选对象框中,可以使用对象名映射功能进行源数据库和目标数据库中的同步对象映射,具体操作可参考对象名映射。

          模式名或表名映射时,为防止索引和约束名冲突,同步后表上的原索引名称将变为此格式:i_+哈希值+原索引名(可能被截断)+_key。其中哈希值由“原模式名_原表名_原索引名”计算得到。同理,同步后表上的原约束名将变为:c_+哈希值+原约束名(可能被截断)+_key。

          说明

          l 选择对象的时候支持对展开的库进行搜索,以便您快速选择需要的数据库对象。

          l 如果有切换源数据库的操作或源库同步对象变化的情况,请在选择同步对象前单击右上角的,以确保待选择的对象为最新源数据库对象。

          l 当对象名称包含空格时,名称前后的空格不显示,中间如有多个空格只显示一个空格。

          l 选择的同步对象名称中不能包含空格。

          同步用户

          数据库的同步过程中,同步用户需要进行单独处理。

          同步用户一般分为两类:可同步的用户和不支持同步的用户。对于不支持同步的用户,在备注列的查看详情中会提示具体的原因,您可以根据业务需求选择是否同步用户和权限。

          步骤 5 在“预检查”页面,进行同步任务预校验,校验是否可进行。

          • 查看检查结果,如有不通过的检查项,需要修复不通过项后,单击“重新校验”按钮重新进行任务预校验。
          • 预检查完成后,且所有检查项结果均通过时,单击“下一步”。
          说明

          所有检查项结果均通过时,若存在请确认项,需要阅读并确认详情后才可以继续执行下一步操作。

          步骤 6 在“任务确认”页面,设置同步任务的启动时间,并确认同步任务信息无误后,单击“启动任务”,提交同步任务。

          表 任务启动设置

          参数 描述
          启动时间 同步任务的启动时间可以根据业务需求,设置为“立即启动”或“稍后启动”。
          说明
          预计同步任务启动后,会对源数据库和目标数据库的性能产生影响,建议选择业务低峰期,合理设置同步任务的启动时间。

          步骤 7 同步任务提交后,您可在“管理”页面,查看并管理自己的任务。

          • 您可查看任务提交后的状态,状态请参见任务状态说明。
          • 在任务列表的右上角,单击刷新列表,可查看到最新的任务状态。
          • 对于未启动、状态为配置中的任务,DRS默认保留3天,超过3天DRS会自动删除后台资源,当前任务状态不变。当用户再次配置时,DRS会重新申请资源。
          文档反馈

          建议您登录后反馈,可在建议与反馈里查看问题处理进度

          鼠标选中文档,精准反馈问题

          选中存在疑惑的内容,即可快速反馈问题,我们会跟进处理

          知道了

          上一篇 :  将MySQL同步到MySQL
          下一篇 :  将Oracle同步到MySQL
          搜索 关闭
          ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
          公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
          备案 京公网安备11010802043424号 京ICP备 2021034386号
          ©2025天翼云科技有限公司版权所有
          京ICP备 2021034386号
          备案 京公网安备11010802043424号
          增值电信业务经营许可证A2.B1.B2-20090001
          用户协议 隐私政策 法律声明