更新时间:2026-05-21 GMT+08:00
分享

将PostgreSQL数据同步到PostgreSQL

操作场景

云数据库RDS界面提供数据复制服务DRS的数据实时同步功能,支持在同一Region内RDS for PostgreSQL实例之间进行数据同步,并将所选数据库同步至目标实例。

注意事项

  • 使用数据实时同步功能必须具备相关权限,详见权限管理
  • RDS界面的该功能基于数据复制服务DRS实现,如果当前region不存在DRS服务则无法使用。更多内容,请参见将PostgreSQL同步到PostgreSQL
  • 数据实时同步时会占用实例资源,请在业务低峰期使用此功能。
  • 目标实例存储空间需要充足,若空间不足可能会导致同步失败。
  • 请确保选择的同步数据库在目标实例中不存在。
  • RDS控制台仅展示在RDS最近一次创建的DRS同步任务,再次下发不再展示历史任务,如需查看当前实例全部同步任务,请在DRS查看。
  • 数据实时同步下发后,会进行DRS同步任务创建并启动,启动后用户需根据任务状态或者页面展示时延判断手动结束、删除同步任务。
  • 数据实时同步功能依赖rds_hwdrs_ddl插件,数据同步中自动为每个数据库安装了rds_hwdrs_ddl插件,如需卸载请任务迁移完成后手动卸载插件,详见通过界面安装和卸载插件
  • 数据实时同步任务失败时,可通过DRS失败案例排查处理:PostgreSQL->PostgreSQL实时同步失败案例

约束限制

  • 仅支持在同一Region内RDS for PostgreSQL实例之间进行数据同步。
  • 不支持RDS for PostgreSQL增强版实例。
  • 容灾实例、只读实例不支持此功能。
  • 同步任务进行中切勿修改密码、重启数据库等操作,可能影响同步功能。
  • 源端、目标端实例需状态正常、下发时无其他冲突操作,若源端实例无冲突任务下发时报错“与当前操作冲突的另一个操作正在进行”,可检查目标端实例是否存在冲突操作。
  • 目标实例数据库大版本需等于或高于源实例数据库大版本,例如:16.8版本的实例只能同步到16及以上版本的目标实例。
  • 所选择同步数据库的数量上限取决于实例规格:取10和(CPU核数×2)中的较大值,且小于等于当前可用逻辑复制槽数量和可用walsender进程个数。
    • 同步数据库数量 ≤ 当前可用逻辑复制槽数量(当前可用逻辑复制槽数量 = 当前可创建的最大复制槽个数 - 当前已使用的复制槽个数)
      • 修改当前可创建的最大复制槽个数(max_replication_slots),重启实例使参数修改生效。
      • 查询当前已使用的复制槽个数:SELECT count(*) FROM pg_replication_slots;
    • 同步数据库数量 ≤ 可用walsender进程个数(可用walsender进程个数 = 同时运行的walsender进程最大数量 - 当前walsender进程个数)
      • 修改同时运行的walsender进程最大数量(max_wal_senders),重启实例使参数修改生效。
      • 查询当前walsender进程个数:SELECT COUNT(*) FROM pg_stat_replication;

计费说明

同步任务的配置费用为单个DRS同步任务的费用,每个源端同步库对应单个DRS同步任务,按照实际使用时长计费。

操作步骤

  1. 登录RDS管理控制台
  2. 单击管理控制台左上角的,选择区域。
  3. “实例管理”页面,选择指定的实例,单击实例名称。
  4. 在左侧导航栏,单击“数据实时同步”
  5. “数据实时同步”页面,单击“新建同步任务”
  6. 填写同步源端、目标端实例信息,选择企业项目、源端同步库、DRS规格类型,单击“确定”。

    图1 创建数据同步任务
    表1 参数说明

    参数

    说明

    源端实例

    当前RDS for PostgreSQL实例。

    源端实例用户名

    当前实例的用户名。

    需要具有REPLICATION权限,若所选库存在无主键表,需要CREATEDB权限。

    源端实例密码

    当前实例用户名所对应的密码。

    目标端实例

    选择同Region下的其他RDS for PostgreSQL实例。

    目标端实例用户名

    目标端实例的用户名。

    需要具有CREATEDB权限。

    目标端实例密码

    目标端实例用户名所对应的密码。

    企业项目

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理。请在下拉框中选择所在的企业项目,其中,default为默认项目。

    更多关于企业项目的信息,请参见《企业管理用户指南》

    源端同步库

    源实例下需要同步的具体库。

    规格类型

    不同规格类型对应不同性能的性能上限,详细可参考实时同步链路规格说明

  7. 查看同步结果。

    任务提交成功后,在“数据实时同步”页面,在同步任务列表的右上角,单击刷新列表,查看DRS任务同步结果。

    图2 查看同步任务
    • 同步任务列表的“描述”列,为所选择的源端同步库名称。
    • 根据任务状态或者页面展示时延判断手动结束、删除同步任务。

相关文档