为了将数据从源数据库服务器移至目标 Cloud SQL for PostgreSQL 实例,Database Migration Service 需要连接到您的源实例。该连接可通过公共互联网建立,也可通过项目虚拟私有云 (VPC) 中的一系列专用连接来建立。
本页面简要介绍了每种可用的源数据库连接方法,并提供了一个建议部分,以帮助您为迁移选择合适的解决方案:
方法比较提供了一个表格,用于比较可用的源 连接方法。
IP 许可名单介绍了与源数据库公共 IP 的网络连接。
正向 SSH 隧道简要介绍了专用 Secure Shell (SSH) 隧道。
使用 Private Service Connect 接口的专用连接 介绍了如何使用网络连接连接到源专用 IP。
使用 VPC 对等互连的专用连接介绍了如何通过对等互连的 VPC 网络建立与源数据库专用 IP 的连接。
熟悉不同的连接方法及其 要求后,您可以使用 决策树图为您的场景选择合适的解决方案。
方法比较
每种连接方法都有不同的优势和要求。请使用下表快速比较这些方法,然后在每个方法的专用部分中了解更多详细信息。
| 网络方法 | 优点 | 缺点 |
|---|---|---|
| IP 许可名单 |
|
|
| 正向 SSH 隧道 |
|
|
| Private Service Connect 接口 |
|
|
| 使用虚拟私有云对等互连的专用连接 | 连接是通过 VPC 对等互连建立到源 数据库的专用 IP 地址的。如果您的 VPC 没有足够的对等互连 配额,则可能难以使用此连接方法。在大多数情况下, 我们建议您改用 使用 Private Service Connect 接口的专用连接 。 |
用于源数据库连接的 IP 许可名单
当您使用 IP 许可名单连接方法时,Database Migration Service 会尝试建立与源数据库服务器的公开可用 IP 地址的连接。
IP 许可名单连接的要求
概括来讲,如需使用此连接方法,您需要确保满足以下条件:
您必须将来源的 IP 地址公开到公共互联网(直接公开,或通过域名服务器 (DNS) 使用公开认可的主机名公开)。
- Database Migration Service 不支持使用 Oracle Real Application Clusters (RAC) 环境中的单个客户端访问名称 (SCAN) 功能直接连接到数据库。如需了解在此类环境中使用公共 IP 许可名单连接的潜在解决方案,请参阅 排查 Oracle SCAN 错误。
您需要允许来自 Database Migration Service 公共 IP 地址的传入连接。
可选:IP 许可名单连接默认使用未加密的连接。 我们建议您使用 TLS 证书来保护连接。 Database Migration Service 支持不同的 TLS 类型,因此您可以根据源数据库支持的内容选择最佳解决方案。如需了解详情,请参阅 使用 SSL/TLS 证书加密网络连接。
配置 IP 许可名单连接
配置公共 IP 连接需要执行不同的步骤,具体取决于您的源数据库类型。如需了解详情,请参阅:
用于源数据库连接的正向 SSH 隧道
此连接方法是公共网络连接和专用网络连接的混合。 连接本身是通过安全 Shell (SSH) 端口建立到隧道主机服务器的公共 IP 地址的。 连接处于活跃状态后,所有流量都通过安全隧道传输到源数据库的专用 IP 地址。
正向 SSH 隧道的必要条件
如需创建连接,您需要在隧道服务器上将 SSH 端口公开到公共互联网。建立连接后,所有流量都会通过专用隧道连接路由。
您可以在托管源数据库的同一服务器上终止隧道,但我们建议您使用专用隧道服务器。 这样,您就不会将源数据库直接公开到公共互联网。隧道服务器可以是任何可使用 SSH 通过互联网访问且可以访问源数据库的 Unix 或 Linux 主机。
对于某些连接场景,我们建议您使用 使用 Virtual Private Cloud 对等互连的专用连接网络方法 而不是正向 SSH 隧道:
- 对于位于内部的自托管来源 Google Cloud, Database Migration Service 可以使用专用连接配置访问源 数据库的专用 IP。您无需设置单独的 SSH 服务器来建立连接。
配置正向 SSH 隧道连接
通过正向 SSH 隧道配置连接需要执行不同的步骤,具体取决于您的源数据库类型。如需了解详情,请参阅:
使用 Private Service Connect 接口的专用连接
Private Service Connect 接口可让 Database Migration Service 启动与源数据库专用 IP 的连接,而不会消耗其自身 IP 地址的 对等互连配额。相反,此连接方法会利用您在 VPC 中创建的网络连接。Private Service Connect 接口的要求
此连接方法要求您在可以访问源数据库的 VPC 网络中创建网络连接。网络连接的子网必须有 6 个可用的 IP 地址(也就是说,您必须使用 /29 范围,总共 8 个 IP 地址)。您可以将同一网络连接用于多个迁移作业,前提是您有足够的地址来满足迁移场景的需求:
| 目的地 | 所需的 IP 地址数量 |
|---|---|
| Cloud SQL 区域实例 | 1 个地址 |
| Cloud SQL 高可用性 (HA) 实例 | 2 个地址 |
使用 Private Service Connect 接口配置专用 IP 连接
如需使用 Private Service Connect 接口配置专用 IP 连接,必须可以从您创建网络连接的 虚拟私有云 访问源数据库专用 IP。如需详细了解如何为不同的数据库来源配置此专用 IP 连接方法,请参阅:
对于自托管来源:请参阅 为自托管来源配置使用 Private Service Connect 接口的专用 IP 连接 。
对于 Amazon RDS for Oracle:您需要 Cloud VPN 或 Cloud Interconnect 才能创建与源数据库专用 IP 的连接。请参阅: 为 Amazon RDS 来源配置使用 Private Service Connect 接口的专用 IP 连接。
使用 VPC 对等互连的专用连接
借助此方法,您可以通过 Virtual Private Cloud (VPC) 中的专用 IP 地址连接到来源。您无需将任何接口公开到公共 互联网即可使用此方法,但它要求可以从您的 Google Cloud VPC 访问源数据库 IP 地址或主机名。
根据您拥有的源数据库,此连接方法可能需要您设置其他网络组件(例如 Cloud VPN 或反向代理虚拟机):
专用 IP 连接的要求
此连接方法最适合可以从您的 Google Cloud VPC 网络访问其专用 IP 地址 的来源。 对于位于内部的自托管来源,您可以使用 Database Migration Service 中的专用连接配置建立直接对等互连连接。 Google Cloud对于其他类型的来源,您可能需要其他网络组件 例如 Cloud VPN 或 反向代理虚拟机 (或两者)。
专用 IP 连接需要满足以下条件:
您需要拥有一个启用了专用服务访问通道的 虚拟私有云网络。
这是您与 Database Migration Service 和源数据库服务器对等互连的网络。您需要有足够的空间为这两个组件分配 IP 范围。
对于 Amazon RDS for Oracle:您需要在您打算为 Database Migration Service 创建专用连接配置的同一 VPC 网络中配置 Cloud VPN 或 Cloud Interconnect。 如果您无法在同一 VPC 网络中创建专用连接配置,则需要 在 Compute Engine 上设置反向代理虚拟机 (VM)。
使用 VPC 对等互连配置专用 IP 连接
如需使用虚拟私有云对等互连配置专用 IP 连接,必须可以从您的虚拟私有云访问源数据库专用 IP。根据您的网络架构,您可能需要使用其他组件,例如反向代理虚拟机或 Cloud VPN。
如需详细了解如何为不同的数据库来源配置专用 IP 连接,请参阅:
对于自托管来源:请参阅 为自托管 来源配置使用虚拟私有云对等互连的专用 IP 连接。
对于 Amazon RDS for Oracle:您需要 Cloud VPN 或 Cloud Interconnect 才能创建与源数据库专用 IP 的连接。请参阅: 为 Amazon RDS 来源配置使用虚拟私有云对等互连的专用 IP 连接 。
来源网络连接决策树
熟悉所有受支持的来源连接方法及其要求后,您可以按照图中的问题来帮助您为您的场景选择合适的连接方法。
后续步骤
了解目标数据库连接。请参阅 目标数据库连接的网络方法。
如需获取完整的分步迁移演练,请参阅 Oracle 到 Cloud SQL for PostgreSQL 迁移指南。