用户指南-数据迁移-使用 DTS 迁移数据-使用 DTS 迁移 PPAS 数据-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

用户指南-数据迁移-使用 DTS 迁移数据-使用 DTS 迁移 PPAS 数据

李沃晟 2018-09-07 23:09:08 984

使用数据传输服务(DTS)将本地数据库迁移到 RDS for PPAS,可以实现应用不停服务的情况下,平滑完成数据库的迁移工作。迁移过程中,对本地的 Oracle 数据库没有影响。

背景信息


DTS 数据迁移支持 PPAS 的结构迁移和全量迁移。

  • 结构迁移
    DTS 会将迁移对象的结构定义迁移到目标实例。目前 DTS 支持结构迁移的对象有:表、视图、同义词、触发器、存储过程、存储函数、包、自定义类型。

  • 全量迁移
    DTS 会将本地数据库迁移对象的数据全部迁移到目标实例。如果迁移过程中,本地 Oracle 数据库有数据写入的话,那么这些增量数据不一定能够被迁移到 RDS 中。所以,如果要保证数据一致性,那么尽量选择在业务低峰期进行全量迁移。


迁移限制


将 PPAS 本地数据库迁移到 RDS 上有以下限制。
  • 迁移过程中,不支持 DDL 操作。
  • 不支持物化视图的迁移。
  • 结构迁移时,会将 reverse index 迁移成普通索引。
  • 结构迁移时,会将位图索引迁移成普通索引。
  • 结构迁移时,会将分区索引迁移成在每个分区上单独创建的索引。


前提条件


已完成 RDS 实例数据库的准备,可参见 设置内外网地址创建数据库和账号

操作步骤


本例以有公网 IP 的本地数据库迁移到 RDS 上为例。 [font=PingFangSC, "]准备本地数据 [font=PingFangSC, "]
在正式迁移之前,需要先在本地数据库和 RDS 实例中创建迁移账号,并在 RDS 实例中创建要迁移的数据库,并将要迁移的数据库的读写权限授权给迁移账号。不同的迁移类型需要不同的权限,如下表所示。
[tr=rgb(51, 205, 229)][td]迁移类型 结构迁移全量迁移本地 Oracle 实例schema 的 ownerschema 的 ownerRDS 上 PPAS 实例schema 的 ownerschema 的 owner
  1. 通过 PostgreSQL 客户端,在本地数据库中创建迁移账号。CREATE USER username IDENTIFIED BY password;
    参数说明:
    • username:要创建的账号
    • password:该账号的登录密码

如:CREATE USER myuser IDENTIFIED BY mypassword;
  • 在本地数据库中给迁移账号授权,本地数据库中迁移账号的权限要求请参见上表。GRANT privileges ON tablename TO username;
    参数说明:
    • privileges:该账号的操作权限,如 SELECT、INSERT、UPDATE 等。如果要授权该账号所有权限,则使用 ALL
    • tablename:表名。如果要授权该账号所有的表权限,则使用通配符 *
    • username:要授权的账号名

    如:GRANT ALL ON* TO myuser;


  • [font=PingFangSC, "]
    存储 SQL Oracle 关系型数据库 数据库 数据安全/隐私保护 PostgreSQL 索引 RDS
    分享到
    取消 提交回答
    全部回答(0)
    数据库
    使用钉钉扫一扫加入圈子
    + 订阅

    分享数据库前沿,解构实战干货,推动数据库技术变革

    推荐文章
    相似问题
    推荐课程