迁移到 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure

本节介绍如何将内部部署 VMware 数据库工作负载迁移到 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure ,将应用程序工作负载迁移到 Oracle Cloud VMware Solution

体系结构

此体系结构显示从内部部署 VMware 数据库和应用程序迁移到 Oracle Cloud Infrastructure

第一步是使用 HCX 和 vMotion 等 VMware 工具将运行在 VMware 上的内部部署数据库和应用迁移到 Oracle Cloud VMware Solution 。通过 Oracle Cloud VMware Solution ,您可以在 OCI 租户中完全自动实施 VMware 软件定义的数据中心 (SDDC),并在 OCI 裸金属实例上运行。

接下来,使用 Oracle Zero Downtime Migration 自动将数据库从 Oracle Cloud VMware Solution 数据库虚拟机迁移到 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure ,以合并到高性能数据库平台。

注意:

将数据库从内部部署 VMware 迁移到 Oracle Cloud VMware Solution 时,必须遵守 Oracle Database 许可规则和支持条件。

下图说明了此参考体系结构。



migrate-vmware-exadata-base-architecture.zip

此体系结构支持以下组件:

  • 区域

    Oracle Cloud Infrastructure 区域是一个局部地理区域,包含一个或多个称为可用性域的数据中心。区域独立于其他区域,广阔的距离可以将其分开(跨国家甚至大陆)。

  • 虚拟云网络 (VCN) 和子网

    VCN 是您在 Oracle Cloud Infrastructure 区域中设置的可定制软件定义网络。与传统数据中心网络一样,VCN 允许您完全控制您的网络环境。一个 VCN 可以具有多个不重叠的 CIDR 块,您可以在创建 VCN 后对其进行更改。您可以将 VCN 细分为多个子网,这些子网可以限定到区域或可用性域。每个子网包含一系列不与 VCN 中的其他子网重叠的连续地址。创建后可以更改子网的大小。子网可以是公共子网,也可以是专用子网。

  • Oracle Base Database Service

    通过 Oracle Base Database Service ,您可以充分利用 Oracle DatabaseOracle Cloud Infrastructure (OCI) 的组合功能,对数据保持绝对控制。OCI 在虚拟机上提供单节点数据库系统和多节点 RAC 数据库系统。

  • 专用基础设施上的 Oracle Exadata Database Service on Dedicated Infrastructure

    Oracle Exadata Database Service on Dedicated Infrastructure 在 OCI 数据中心提供 Oracle Exadata Database Machine 服务。Oracle Exadata Database Service on Dedicated Infrastructure 服务可以托管在 OCI 区域中的单个 Exadata 机架上运行的一个或多个 VM 集群中的多个 Oracle 数据库。Oracle Exadata Database Service on Dedicated Infrastructure 是一个理想的数据库整合平台。

  • Oracle Cloud VMware Solution 软件定义的数据中心 (SDDC)

    Oracle 和 VMware 合作开发 VMware 认证的软件定义数据中心 (SDDC) 实施,以便在 Oracle Cloud Infrastructure 中使用。此实施称为 Oracle Cloud VMware Solution ,它使用 OCI 来托管高可用性 VMware SDDC。它还允许将所有内部部署 VMware SDDC 负载无缝迁移到 Oracle Cloud VMware SolutionOracle Cloud VMware Solution 包含以下 VMware 组件:

    • VMware vSphere ESXi
    • VMware vSAN
    • VMware vCenter
    • VMware NSX-T
    • VMware HCX(可选)
  • 裸金属

    Oracle Cloud VMware Solution 软件定义的数据中心 (SDDC) 包含托管 Oracle Cloud VMware Solution 的裸金属服务器。裸金属服务器支持需要大量核心、大量内存和高带宽(例如 Oracle Cloud VMware Solution )的应用。您可以在裸金属服务器上部署 Oracle Cloud VMware Solution ,并与其他公有云和内部部署数据中心相比,配置性能显著提升的虚拟机。

  • 服务网关

    通过服务网关,可以从 VCN 访问其他服务,例如 Oracle Cloud Infrastructure Object Storage 。从 VCN 到 Oracle 服务的流量会通过 Oracle 网络网状结构网络传输,并且从不通过互联网传输。

  • 动态路由网关 (DRG)

    DRG 是虚拟路由器,用于为同一区域中的 VCN 之间、VCN 与区域外的网络(例如另一个 Oracle Cloud Infrastructure 区域中的 VCN、内部部署网络或其他云提供商中的网络)的专用网络流量提供路径。

  • FastConnect

    Oracle Cloud Infrastructure FastConnect 提供了在您的数据中心与 Oracle Cloud Infrastructure 之间创建专用私有连接的简便方式。FastConnect 与基于 Internet 的连接相比,可提供更高的带宽选项和更可靠的网络体验。

  • 文件存储

    OCI 文件存储在迁移期间用于从共享文件系统导入迁移的数据库。

使用须知

开始之前,请检查此设置中使用的主要组件版本,并查看产品文档以供日后参考。

查看需求

  • 确保源 Oracle Cloud VMware Solution 数据库 VM 正在运行 Oracle Linux 7。9,Oracle Database 版本 19.18 标准版或 Enterprise Edition。
  • 目标 Oracle Exadata Database Service on Dedicated Infrastructure 数据库必须是 Oracle Enterprise Extreme Performance 版本 19.18 或更高版本。
  • 目标 Oracle Base Database Service 数据库可以是标准版或 Enterprise Edition 版本 19.18 或更高版本。
  • Oracle Zero Downtime Migration 必须是版本 21.4 或更高版本。
  • 中间存储必须包括 OCI 文件存储

复查文档

此解决方案手册介绍了如何迁移数据库负载。请参阅下面的解决方案来了解如何迁移 VMware 工作负载。对于数据库迁移的上下文、详细信息和参考,其他资源非常有用。

了解如何将工作负载的 VMware 组件迁移到 Oracle Cloud VMware Solution

查看 Oracle Zero Downtime Migration 资源:

查看逻辑迁移资源:

查看 Oracle Database 资源:

关于所需产品和角色

此解决方案需要以下产品:

  • Oracle Cloud Infrastructure 身份和访问管理
  • OCI 计算
  • OCI 文件存储
  • Oracle Zero Downtime Migration
  • Oracle Cloud VMware 解决方案
  • Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure

这些是每种产品所需的角色。

产品名称:角色 要求 ...
Oracle Cloud Infrastructure Identity and Access Management :OCI_user 创建用于逻辑迁移的 API 密钥
OCI 计算admin 创建 OCI 计算实例以运行 Oracle Zero Downtime Migration 软件
OCI 文件存储Storage Admin 为导出/导入操作创建 OCI 文件存储
Oracle Zero Downtime Migration :opc 创建 zdmuser 以安装和运行 Oracle Zero Downtime Migration 软件
Oracle Zero Downtime Migration :zdmuser
  • 安装 Oracle Zero Downtime Migration 软件
  • 运行 Oracle Zero Downtime Migration
Oracle Cloud VMware Solution 虚拟机:root/sudoer user
  • 将网络文件系统共享从 OCI 文件存储挂载到导出数据库以进行逻辑迁移
  • Oracle Zero Downtime Migration 虚拟机启用无密码 SSH
  • 运行 sudo 命令以安装 Oracle Zero Downtime Migration 软件代理
  • 运行 sudo 命令以备份或导出数据库
Oracle Cloud VMware Solution 数据库:sys/system 运行数据泵以导出数据库
OCI Oracle Cloud VMware Solution 和 OCI 虚拟云网络:Admin
  • 修改 Oracle Cloud VMware Solution 配置以添加 OCI 服务网关、路由和安全规则
  • 修改 Oracle Cloud VMware Solution 配置,以将路由和安全规则添加到运行目标数据库的虚拟云网络子网
Oracle Exadata Database Service on Dedicated InfrastructureOracle Base Database ServiceDatabase Admin 创建目标数据库
Oracle Exadata Database Service on Dedicated InfrastructureOracle Base Database Service VM 集群节点:opc
  • 将网络文件系统共享从 OCI 文件存储挂载到导入逻辑迁移的数据库
  • Oracle Zero Downtime Migration 虚拟机启用无密码 SSH
  • 安装 Oracle Zero Downtime Migration 软件代理
  • 运行 sudo 命令以恢复或导入数据库
Oracle Exadata Database Service on Dedicated InfrastructureOracle Base Database Servicesys/system 运行数据泵以导入数据库

要获得所需资源,请参阅 Oracle 产品、解决方案和服务

迁移的注意事项

开始迁移之前,请查看这些假设和注意事项。

  • 本手册中的步骤介绍了如何使用脱机逻辑迁移进行迁移,有关如何使用联机逻辑迁移进行迁移的信息,请参阅“复查文档”部分。在逻辑联机迁移期间,Oracle Zero Downtime Migration 会为源数据库和目标数据库之间的迁移配置 Oracle GoldenGate ,以确保数据库在迁移期间始终联机。
  • Oracle Zero Downtime Migration 支持两种类型的数据库迁移:从 Oracle Cloud VMware Solution 数据库 VM 到 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure :逻辑迁移和物理迁移。我们建议使用逻辑迁移,因为此方法最简单。物理迁移要求源数据库和目标数据库处于同一补丁程序级别。如果源数据库未定期打补丁,这可能会很困难。
  • 在逻辑迁移期间,将迁移可插入数据库 (pluggable database,PDB) 和/或方案。非容器数据库(非 CDB)将迁移到在目标数据库上运行的容器数据库中配置的可插入数据库。
  • Oracle Zero Downtime Migration 可以直接从网络文件系统存储导出和导入,因此,通过网络文件系统挂载的 OCI 文件存储是最佳的数据传输选项。OCI 文件存储可以提供给通过挂载目标配置目标数据库的 VCN。需要安全规则才能允许 OCI 文件存储挂载目标与目标数据库之间的网络文件系统协议。还必须在运行源数据库的挂载目标和 NSX 叠加网络之间允许网络文件系统。
  • 源数据库可以运行 Oracle 单实例。Oracle Base Database Service 可以运行单实例或 RAC 数据库,而 Oracle Exadata Database Service on Dedicated Infrastructure 始终运行 RAC 数据库。在数据库迁移期间,Oracle Zero Downtime Migration 会根据需要将单实例转换为 RAC 数据库。
  • 对于 Oracle Cloud VMware Solution 数据库 VM 源数据库,Oracle 透明数据加密数据库加密是可选的。将数据库迁移到 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure 时,将始终加密目标数据库。
  • 源数据库和目标数据库必须运行相同的时区文件。有关说明,请参阅“查看文档”部分中的“使用时区数据升级时区文件和时间戳”。
  • 此手册中的步骤假定从安装了数据库 VM 的 Oracle Cloud VMware Solution 叠加网络到配置了目标数据库和 Oracle Zero Downtime Migration VM 的 OCI VCN 直接网络连接。
  • 源和目标数据库不必具有相同的 sys 密码、Wallet 密码、数据库版本、数据库名称和补丁程序级别。

使用逻辑迁移进行迁移

以下步骤介绍了如何执行脱机逻辑迁移。对于联机迁移,请参阅“查看文档”部分中的分步指南 - 从内部部署进行逻辑迁移和实时升级到 Oracle Exadata Database Service on Dedicated Infrastructure

  1. 在 OCI 控制台中,验证部署 Oracle Cloud VMware Solution 时是否运行了以下工作流:
    • 配置与 Oracle 服务网络的连接
    • 配置与 VCN 资源的连接
    这些工作流允许在 Oracle Cloud VMware Solution NSX Overlay 中运行的 VM 与目标数据库和 Oracle Zero Downtime Migration 服务器所在或将要运行的 Oracle 服务网络和 VCN 进行通信。如果尚未运行这些工作流,请运行这些工作流以配置所有必需的安全性和路由规则。
  2. 使用 OCI 控制台或 REST API 创建目标 Oracle Base Database ServiceOracle Exadata Database Service on Dedicated Infrastructure 数据库。按如下方式配置数据库:
    • 新目标数据库可以具有与源数据库不同的名称。
    • 新数据库可以是比源数据库更新的版本。
    • sys 用户提供密码。记下密码。
    记下创建数据库后的数据库 OCID。
  3. 在 OCI 控制台中,在配置了目标数据库的同一 VCN 中创建计算实例。
    此计算实例可以是任何配置,其中至少有两个 OCPU 和 16GB RAM(运行 Oracle Linux 7。9 操作系统)。此虚拟机将用于运行 Oracle Zero Downtime Migration 软件。
  4. 按照“查看文档”部分中的 Oracle Zero Downtime Migration 安装文档在 OCI 计算实例上下载并安装 Oracle Zero Downtime Migration 21.4 软件。
    zdmuser 身份运行 Oracle Zero Downtime Migration 软件。
  5. 确保 Oracle Zero Downtime Migration VM 可以使用主机名和 IP 地址与源数据库主机通信。如有必要,修改 VCN DNS 解析程序或 Oracle Zero Downtime Migration VM 中的 /etc/hosts 文件。请确认以下几点:
    • 验证是否存在允许 Oracle Zero Downtime Migration VM 连接到默认监听程序端口 1521 和 ssh 端口 22 上的源数据库 VM 的安全规则。
    • 确保 Oracle Zero Downtime Migration VM 可以访问默认监听程序端口 1521 和 ssh 端口 22 上的目标数据库主机。
  6. zdmuser 身份登录到运行 Oracle Zero Downtime Migration 软件的计算实例,并生成 SSH 密钥对。启用从 zdmuser 帐户到源数据库 VM 的无口令 SSH (rootprivilege-sudoer user)。
  7. 在 OCI 控制台中,创建 OCI 文件存储
    请注意 VCN 上的挂载目标、导出和 IP 地址。
  8. 按照“复查文档”部分中的“配置文件存储的 VCN 安全规则”中的步骤操作,在 VCN 中配置必需的安全规则,以允许将网络文件系统协议从目标数据库系统配置到在步骤 7 中创建的 OCI 文件存储 IP 地址。请参阅文档以创建规则,以允许从 OCI NSX 叠加网络中的网络文件系统协议到在步骤 7 中创建的 OCI 文件存储 IP 地址。
  9. Use the IP address and Export from step 7 to mount this OCI File Storage via network file system on the source Oracle Cloud VMware Solution database VM and on all nodes of the target database.记下挂载点。
  10. 在 OCI 控制台中,为拥有目标数据库的 OCI 用户创建一个 API 密钥。
    请注意用户 OCID、租户 OCID、指纹和 OCI 区域。将对应的私钥和公钥保存在 PEM 文件中。Oracle Zero Downtime Migration 将使用此 API 密钥连接到 OCI 以在数据库迁移期间获取目标数据库信息。
  11. 将 PEM 文件从上一步复制到 Oracle Zero Downtime Migration VM。
  12. sys 用户身份登录到源数据库以确保参数 Streams_Pool_Size 至少设置为 2G,例如:
    SQL>show parameter streams_pool_size;
    SQL>alter system set streams_pool_size=2G scope=both SID=’*’;                  
  13. 使用零停机迁移随附的 Oracle Zero Downtime Migration 的逻辑迁移响应文件模板为迁移创建响应文件。关键参数包括:
    • TARGETDATABASE_OCID :步骤 1 中目标数据库的 OCID。
    • MIGRATION_METHOD: OFFLINE_LOGICAL
    • DATA_TRANSFER_MEDIUM: NFS
    • TARGETDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_ADMINUSERNAME: system
    • SOURCEDATABASE_CONNECTIONDETAILS_HOST :源 Oracle Cloud VMware Solution 数据库 VM 的 IP/主机名。
    • SOURCEDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCEDATABASE_CONNECTIONDETAILS_SERVICENAME :源可插入数据库 (pluggable database,PDB) 或非容器数据库 (container database,CDB) 的服务名称。使用 lsnrctl 查找。
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_TENANTID :步骤 10 中的租户 OCID。
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_USERID :步骤 10 中的用户 OCID。
    • OCIAUTHENTICATIONDETAILS_USERPRINCIPAL_FINGERPRINT :步骤 10 中的指纹。
    • OCIAUTHENTICATIONDETAILS_PRIVATEKEYFILE :步骤 11 中 Oracle Zero Downtime Migration 服务器上私有密钥 PEM 文件的文件路径。
    • OCIAUTHENTICATIONDETAILS_REGIONID :步骤 10 中 OCI 用户的 OCI 区域 ID。
    • TARGETDATABASE_CONNECTIONDETAILS_HOST :目标数据库系统上第一个 VM 的 IP/主机名。
    • TARGETDATABASE_CONNECTIONDETAILS_PORT: 1521
    • TARGETDATABASE_CONNECTIONDETAILS_SERVICENAME :目标数据库中目标可插入数据库的服务名。使用 lsnrctl 查找。
    • SOURCECONTAINERDATABASE_ADMINUSERNAME: system
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_HOST :源 Oracle Cloud VMware Solution 数据库 VM 的 IP/主机名。
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_PORT: 1521
    • SOURCECONTAINERDATABASE_CONNECTIONDETAILS_SERVICENAMEOracle Cloud VMware Solution 数据库 VM 上源容器数据库的服务名称。使用 lsnrctl 查找。
    • DATAPUMPSETTINGS_JOBMODE: SCHEMA
    • DATAPUMPSETTINGS_FIXINVALIDOBJECTS: TRUE
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_EXPORTDIRECTORYOBJECT_PATH :步骤 9 中的网络文件系统挂载点。
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_NAME: mig
    • DATAPUMPSETTINGS_IMPORTDIRECTORYOBJECT_PATH :步骤 9 中的网络文件系统挂载点。
    • DATAPUMPSETTINGS_CREATEAUTHTOKEN: TRUE
    • DATAPUMPSETTINGS_DATAPUMPPARAMETERS_IMPORTPARALLELISMDEGREE :如果目标为运行 Oracle Standard Edition 2 的 Oracle Base Database Service ,请用数字符号 (#) 对此行进行注释。否则,根据可用 CPU 数输入大于 2 的数字。
    • DATAPUMPSETTINGS_DATAPUMPPARAMETERS_EXPORTPARALLELISMDEGREE :如果源 Oracle Cloud VMware Solution 数据库 VM 运行 Oracle Standard Edition 2,请用数字符号 (#) 对此行进行注释。否则,根据可用 CPU 数输入大于 2 的数字。
    • TABLESPACEDETAILS_AUTOCREATE: TRUE
    • TABLESPACEDETAILS_USEBIGFILE: TRUE
    • TABLESPACEDETAILS_EXTENTSIZEMB: 512
    • EXCLUDEOBJECTS-1: owner:PDBADMIN
  14. 运行 Oracle Zero Downtime Migration 模拟运行迁移作业 (-eval),以验证符合所有迁移先决条件。这将运行云迁移前指导工具 (CPAT) 来验证源数据库是否适合使用 Oracle Zero Downtime Migration 逻辑迁移迁移迁移到目标数据库。在继续之前解决 CPAT 报告的问题。例如:
    
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_13 \
    -eval
    此命令要求提供两个密码。第一个口令是源数据库的系统口令。第二个密码是目标数据库的系统密码。
    请注意 Oracle Zero Downtime Migration 作业 ID。
    成功运行后,继续执行下一步。
  15. 试运行迁移成功后,运行 Oracle Zero Downtime Migration 作业。例如:
    zdmcli migrate database -sourcedb source_db_unique_name \
    -sourcenode IP/hostname_of_Oracle_Cloud_VMware_Solution_database_virtual_machine \
    -srcauth zdmauth \
    -srcarg1 user:root_or_sudoer_user \
    -srcarg2 identity_file:path_to_ssh_private_key/ssh_private_key_file_name_from_step_6 \
    -srcarg3 sudo_location:/usr/bin/sudo \
    -rsp path_to_response_file/response_file_name_from_step_13
    此命令要求提供两个密码。第一个口令是源数据库的系统口令。第二个密码是目标数据库的系统密码。
    请注意 Oracle Zero Downtime Migration 作业 ID。