对于从 Oracle 到 AlloyDB for PostgreSQL 的异构迁移,Database Migration Service 要求您先创建并配置 AlloyDB for PostgreSQL 目标集群和主数据库。执行以下步骤:
- 创建目标集群和主数据库。请确保您配置了足够的计算和内存资源来满足迁移需求,并遵循
已知限制中列出的要求。
建议您使用特定于要使用的 目标网络方法的设置来创建目标集群:
如果您想使用… 请执行以下操作 公共 IP 目标连接, 创建目标集群时,请启用公共 IP 以用于入站连接。请参阅 AlloyDB for PostgreSQL 文档中的 创建 AlloyDB for PostgreSQL 实例。 专用 IP 目的地连接, 确定是否可以使用已启用 PSC 的 AlloyDB for PostgreSQL 实例作为迁移目标。请仔细考虑启用 PSC 的实例的功能限制。请参阅 AlloyDB for PostgreSQL 文档中的 Private Service Connect 限制。
- 对于可以使用已启用 PSC 的 AlloyDB for PostgreSQL 实例的场景,请创建已启用 Private Service Connect 的目标集群。请参阅 AlloyDB for PostgreSQL 文档中的
创建已启用 PSC 的 AlloyDB for PostgreSQL 实例。
您无需为目标实例创建 Private Service Connect 端点。创建迁移作业时,Database Migration Service 可以在后台自动处理端点创建事宜。
- 对于无法使用已启用 PSC 的 AlloyDB for PostgreSQL 实例的场景,请创建已启用专用服务访问通道的目标集群。请参阅 AlloyDB for PostgreSQL 文档中的 创建具有专用服务访问通道的 AlloyDB for PostgreSQL 实例。
- 对于可以使用已启用 PSC 的 AlloyDB for PostgreSQL 实例的场景,请创建已启用 Private Service Connect 的目标集群。请参阅 AlloyDB for PostgreSQL 文档中的
创建已启用 PSC 的 AlloyDB for PostgreSQL 实例。
- 在目标集群中创建以下实体:
- 向专用迁移用户账号授予所需权限。
执行以下操作:
-
使用
psql
客户端连接到 AlloyDB for PostgreSQL 实例。 - 在目标数据库上运行以下命令:
GRANT CREATE ON DATABASE DESTINATION_DB_NAME TO "MIGRATION_USER_ACCOUNT_NAME";
-
可选:授予迁移用户
CREATEDB
权限,以便测试转换后的架构。在迁移过程的后期,即在您 转换源架构后,可以使用 Database Migration Service 测试转换后的架构是否可以应用于 PostgreSQL 数据库。为了执行测试,Database Migration Service 会创建一个临时数据库,以避免影响目标数据库。 如果您想 测试转换后的架构,请向迁移用户授予
CREATEDB
权限。 使用以下命令:ALTER USER "MIGRATION_USER_ACCOUNT_NAME" WITH CREATEDB;
- 对于包含外键或触发器的源数据库:使用专用迁移用户账号通过
REPLICATION
选项跳过外键和触发器的复制。运行以下命令:ALTER USER "MIGRATION_USER_ACCOUNT_NAME" WITH REPLICATION;
如需详细了解 Database Migration Service 如何迁移外键和触发器,请参阅 外键和触发器注意事项。
-
使用
后续步骤
了解目标数据库的网络连接。请参阅 目标数据库联网方法。
了解迁移作业。请参阅 创建迁移作业
如需获取完整的分步迁移演练,请参阅 Oracle 到 AlloyDB for PostgreSQL 迁移指南。