对于从 Oracle 到 Cloud SQL 的异构迁移,Database Migration Service 要求您先创建并配置 Cloud SQL 目标实例。执行以下步骤:
- 创建目标实例。请确保您配置了足够的计算和内存资源来满足迁移需求,并遵循
已知限制中列出的要求。
建议您使用特定于要使用的 目标网络方法的设置来创建目标实例:
如果您想使用… 请执行以下操作 公共 IP 目标连接, 创建已启用公共 IP 的目标实例。请参阅 Cloud SQL for PostgreSQL 文档中的 创建 Cloud SQL 实例。 专用 IP 目的地连接, 确定是否可以使用已启用 PSC 的 Cloud SQL 实例作为迁移目标。请仔细考虑启用 PSC 的实例的功能限制。请参阅 Cloud SQL 文档中的 Private Service Connect 限制。
- 对于可以使用已启用 PSC 的 Cloud SQL 实例的场景,请创建目标实例,并同时启用专用 IP 地址和 Private Service Connect。请参阅 Cloud SQL for PostgreSQL 文档中的 创建启用 PSC 的 Cloud SQL 实例。
- 对于无法使用已启用 PSC 的 Cloud SQL 实例的场景,请创建已启用专用 IP 的目标实例。请参阅 Cloud SQL for PostgreSQL 文档中的 创建启用专用 IP 的 Cloud SQL 实例。
- 在目标实例中创建以下实体:
- 向专用迁移用户账号授予所需权限。
执行以下操作:
- 使用 SQL 客户端连接到 Cloud SQL 实例。您可以使用以下方法:
-
psql
客户端。您可以使用此方法连接到实例专用 IP,但可能需要您创建 Compute Engine 虚拟机。 -
gcloud sql connect
命令。此命令仅适用于已启用公共 IP 地址的 Cloud SQL 实例。
-
- 在目标实例上运行以下命令:
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 如何迁移外键和触发器,请参阅 外键和触发器注意事项。
- 使用 SQL 客户端连接到 Cloud SQL 实例。您可以使用以下方法:
后续步骤
了解目标数据库的网络连接。请参阅 目标数据库联网方法。
了解迁移作业。请参阅 创建迁移作业
如需获取完整的分步迁移演练,请参阅 Oracle 到 Cloud SQL for PostgreSQL 迁移指南。