更新目标库的Sequence值

更新时间:
复制 MD 格式

本文为您介绍如何使用数据传输服务DTS(Data Transmission Service)更新同步或迁移实例目标库中的Sequence值。

背景信息

Sequence(序列)是数据库中的一种特殊对象,用于生成一组唯一的递增或递减的数字,这些数字通常用于表中的主键值。为避免在数据同步或迁移到目标数据库后,由于Sequence变更而导致的主键冲突问题,可以使用Sequence值的调整功能。该功能支持获取源数据库当前Sequence的值,并添加一个偏移量后应用到目标库。

例如,源数据库中一个Sequence的当前值为12345,使用Sequence值的调整功能指定偏移量为10000,DTS会将目标数据库中对应Sequence的值更新为22345。

支持的链路

说明

表格中的PostgreSQL包含RDS PostgreSQL实例和自建PostgreSQL数据库。

源库

目标库

相关文档

PostgreSQL

PostgreSQL、PolarDB(兼容Oracle)、PolarDB for PostgreSQL

PolarDB for PostgreSQL

PostgreSQL、PolarDB for PostgreSQL

PolarDB(兼容Oracle)

PolarDB(兼容Oracle)

Oracle

PolarDB(兼容Oracle)

前提条件

目标实例需同时满足以下条件:

  • 实例需为包含增量任务的同步或迁移实例。

  • 实例已进入增量迁移或增量同步阶段。

  • 实例的运行状态为运行中或已暂停。

注意事项

  • 双向同步实例不支持此功能。

  • DTS默认会更新目标库中与源库同名Sequence的值,不支持更新指定Sequence的值。

  • 若在更新目标库中的Sequence值后源库有增量数据写入,可能会导致目标库中的Sequence值不符合预期。

操作步骤

  1. 进入目标地域的任务列表页面(二选一)。

    通过DTS控制台进入

    1. 登录数据传输服务DTS控制台。

    2. 在左侧导航栏,单击数据同步或数据迁移。

    3. 在页面左上角,选择实例所属地域。

    通过DMS控制台进入

    说明

    实际操作可能会因DMS的模式和布局不同,而有所差异。更多信息,请参见极简模式控制台和自定义DMS界面布局与样式。

    1. 登录DMS数据管理服务。

    2. 在顶部菜单栏中,选择Data + AI > 数据传输(DTS) > 数据同步或Data + AI > 数据传输(DTS) > 数据迁移。

    3. 在同步任务或迁移任务右侧,选择实例所属地域。

  2. 找到目标实例,并单击实例ID。

  3. 更新目标库的Sequence值。

    1. 在任务管理页面,单击增量写入模块。

    2. 在基本信息页签,单击同步 Sequence。

    3. 在弹出的对话框,设置偏移量。

    4. 在对话框下方,单击同步。

  4. 查看结果。

    任务完成后,将会出现同步成功的提示,并显示任务执行前后的Sequence值。

  5. 单击关闭。