解决方案指南:适用于裸金属解决方案上的 Oracle 的 Google Cloud 备份和灾难恢复

概览

如需为裸金属解决方案环境中的 Oracle 数据库提供弹性,您需要制定明确的数据库备份和灾难恢复策略。为帮助您满足这一要求, Google Cloud 对 Google Cloud 备份和灾难恢复服务,并将其发现结果编译到本指南中。因此 我们将向您介绍部署、配置和优化备份和 针对裸金属解决方案环境中的 Oracle 数据库的恢复选项, 备份和灾难恢复服务我们还会分享一些 测试结果,这样您就可以有了一个基准,用来与您自己的环境进行比较。 本指南适用于备份管理员、 Google Cloud 管理员或 Oracle DBA。

背景

2022 年 6 月,解决方案架构师团队启动了概念验证 (PoC) Google Cloud 备份和灾难恢复演示 企业客户。为了满足 我们需要支持恢复他们的 50 TB Oracle 数据库, 在 24 小时内恢复数据库。

这个目标带来了很多挑战,但 POC 中的大多数人都参与了 并且认为我们可以实现这个结果,应该继续 概念验证我们认为风险相对较低,因为我们之前进行过测试 备份和灾难恢复工程团队提供的数据, 尽可能实现这些结果。我们还与 让客户放心继续进行 POC。

在本次 PoC 期间,我们学习了如何同时配置多个元素 Oracle、Google Cloud 备份和灾难恢复、存储以及 区域扩展链接 - 在裸金属解决方案环境中。通过遵循 最佳实践,您可以利用自己的成功实现成果。

“您的里程可能会有所不同”是全面考虑广告效果的好方法 文档。我们的目标是分享关于我们所学到的一些知识, 应该关注的方面、应该避免的事项,以及需要调查的方面 没有达到您想要的效果或结果。我们希望本指南 会帮助您建立对所提议解决方案的信心,并且您的 才能得到满足

架构

图 1 显示了需要构建的基础架构的简化视图 部署备份和灾难恢复来保护在云环境中运行的 Oracle 数据库, 裸金属解决方案环境。

图 1:将备份和灾难恢复用于 Oracle 数据库的组件 在裸金属解决方案环境中

显示裸金属解决方案区域扩展如何连接到架构中的所有组成部分,包括宿主项目、包含备份和灾难恢复管理控制台的备份和灾难恢复提供方项目、包含备份/恢复设备的备份和灾难恢复使用方项目、包含 Compute Engine 虚拟机的其他服务项目,以及 Cloud Storage。

如上图所示,此解决方案需要以下组成部分:

  • 裸金属解决方案区域级扩展 - 允许您运行 Oracle 数据库 位于与 Google Cloud 数据中心相邻的第三方数据中心内;以及 使用现有的本地软件许可。
  • 备份和灾难恢复服务项目 - 借助该项目,您可以托管 备份/恢复设备,以及备份裸金属解决方案和 Google Cloud Cloud Storage 存储分区中的工作负载。
  • 计算服务项目 - 为您提供运行 Compute Engine 的位置 虚拟机
  • 备份和灾难恢复服务 - 提供备份和灾难恢复管理控制台 可让您维护备份和灾难恢复。
  • 宿主项目 - 允许您在 可将裸金属解决方案区域级扩展连接到的 VPC 备份和灾难恢复服务、备份/恢复设备、 Cloud Storage 存储分区和 Compute Engine 虚拟机。

安装 Google Cloud 备份和灾难恢复

备份和灾难恢复解决方案至少需要以下两个主要资源 让解决方案正常工作的各个组成部分:

  • 备份和灾难恢复管理控制台 - HTML 5 界面和 API 端点 让您可以在存储分区内创建和管理备份 Google Cloud 控制台。
  • 备份/恢复设备 - 此设备充当任务工作器 以及装载和恢复这类任务

Google Cloud 管理备份和灾难恢复管理控制台。您 需要在服务提供方项目中部署管理控制台 (Google Cloud 管理端),并部署备份/恢复设备 在服务使用方项目(客户方)中。如需详细了解 备份和灾难恢复,请参阅 设置和规划备份和灾难恢复部署。 如需了解服务提供方和服务使用方的定义,请参阅 Google Cloud 术语表

准备工作

如需安装 Google Cloud 备份和灾难恢复服务,您需要完成 以下配置步骤,然后再开始部署:

  1. 启用 专用服务访问通道 连接。您必须先建立此连接,然后才能启动 安装。即使您已经拥有专用服务访问子网 但必须至少具有 /23 个子网。例如,如果您已 为专用服务访问通道连接配置了 /24 子网, 建议您添加一个 /23 子网。更棒的是,您还可以添加一个/20子网 确保您以后可以添加更多服务。
  2. 配置 Cloud DNS,使其可通过 在其中部署备份/恢复设备的 VPC 网络。这个 可确保 googleapis.com 得到正确解析(通过私有或 公开查找)。
  3. 配置网络默认路由和防火墙规则以允许出站流量 发送至 *.googleapis.com(通过公共 IP)或 private.googleapis.com (199.36.153.8/30) 或者针对 0.0.0.0/0 的显式出站流量。同样,您需要 在需要配置网络 IP 地址的 VPC 网络中配置路由和防火墙, 安装备份/恢复设备。我们还建议使用 Google Private 作为首选方式访问 – 请参阅 配置专用 Google 访问通道
  4. 在使用方项目中启用以下 API:
  5. 如果您启用了任何组织政策,请务必配置 以下: <ph type="x-smartling-placeholder">
      </ph>
    • constraints/cloudkms.allowedProtectionLevels 包括 SOFTWAREALL
  6. 配置以下防火墙规则:
    • 来自 Compute Engine 中备份/恢复设备的入站流量 通过 VPC 连接到 TCP-5106 端口上的 Linux 主机(代理)。
    • 如果您将基于块的备份磁盘与 iSCSI 搭配使用,则从 Linux 将裸金属解决方案中的主机(代理)连接到 TCP-3260 上的 Compute Engine VPC。
    • 如果您使用基于 NFS 或 dNFS 的备份磁盘,则从 Linux 主机传出出站流量 (代理)将裸金属解决方案中的(代理)复制到 以下端口上的 Compute Engine VPC: <ph type="x-smartling-placeholder">
        </ph>
      • TCP/UDP-111 (rpcbind)
      • TCP/UDP-756 (status)
      • TCP/UDP-2049 (nfs)
      • TCP/UDP-4001 (mountd)
      • TCP/UDP-4045 (nlockmgr)
  7. 配置 Google Cloud DNS 解析裸金属解决方案主机名和网域,以确保名称解析 在裸金属解决方案服务器、虚拟机和 基于 Compute Engine 的资源,例如备份和灾难恢复服务。

安装备份和灾难恢复管理控制台

  1. 启用 Backup and DR Service API (如果尚未启用)。
  2. 在 Google Cloud 控制台中,使用导航菜单前往 操作部分,然后选择备份和灾难恢复

    显示 Google Cloud 控制台中备份和灾难恢复的初始主页面。字段包括专用服务连接、用于部署备份和灾难恢复管理控制台的区域以及 VPC 网络。

  3. 选择您创建的现有专用服务访问通道连接 。

  4. 选择备份和灾难恢复管理控制台的位置。这个 是部署备份和灾难恢复管理控制台用户的区域 两个接口。Google Cloud 拥有 可维护管理控制台资源

  5. 选择服务使用方项目中的 VPC 网络, 您要连接到备份和灾难恢复服务。这通常属于 VPC 或宿主项目。

  6. 等待一个小时后,当 部署完成。

    显示“备份和灾难恢复”页面,您可以通过该页面登录备份和灾难恢复管理控制台。

安装备份/恢复设备

  1. “备份和灾难恢复”页面上, 点击登录管理控制台

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/
    
  2. 在备份和灾难恢复管理控制台的主页面中,转到 设备页面:

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
    
  3. 输入备份/恢复设备的名称。请注意,Google Cloud 调用 即会启动

  4. 选择您要安装备份/恢复映像的使用方项目 设备。

  5. 选择您的首选区域、可用区和子网。

  6. 选择存储空间类型。对于永久性磁盘,我们建议选择标准永久性磁盘 用于生产环境的 PoC 和 SSD 永久性磁盘

  7. 点击开始安装按钮。此过程预计需要 1 小时 部署备份和灾难恢复管理控制台 备份/恢复设备

  8. 之后,您可以在其他区域或可用区中添加其他备份/恢复设备, 初始安装过程就完成了

配置 Google Cloud 备份和灾难恢复

在本部分中,您将了解 提供备份和灾难恢复服务,保护您的工作负载。

配置服务账号

从 11.0.2 版(2022 年 12 月发布的备份和灾难恢复版本)开始,您可以 使用单个服务账号来运行备份/恢复设备,以访问 Cloud Storage 存储分区,以及保护您的 Compute Engine 虚拟机 虚拟机 (VM) (本文档未涉及)。

服务账号角色

Google Cloud 备份和灾难恢复使用 Google Cloud Identity and Access Management (IAM),用于用户和服务账号授权以及 身份验证。您可以使用预定义角色来实现各种备份 功能。其中最重要的两个角色是:

  • Backup and DR Cloud Storage Operator - 分配此角色 备份/恢复设备使用的服务账号(连接到 Cloud Storage 存储桶。该角色允许 用于 Compute Engine 快照备份的 Cloud Storage 存储分区,以及 访问具有现有基于代理的备份数据的存储分区,以恢复工作负载。
  • Backup and DR Compute Engine Operator - 分配此角色 备份/恢复设备用于创建 Compute Engine 虚拟机的 Persistent Disk 快照。除了 此角色允许服务账号恢复 同一源项目或备用项目。

您可以通过查看 Compute Engine 虚拟机来查找服务账号 在使用方/服务项目中运行备份/恢复设备,以及 查看服务账号中列出的 API 和身份管理部分。

要为备份/恢复设备提供适当的权限,请转到 Identity and Access Management 页面和授权 备份/恢复设备服务的以下 Identity and Access Management 角色 。

  • Backup and DR Cloud Storage Operator
  • Backup and DR Compute Engine Operator(可选)

配置存储池

存储池将数据存储在物理存储位置。您应该使用 Persistent Disk,用于存储最新数据(1-14 天),以及 Cloud Storage 实现长期保留(天、周、月和 年)。

Cloud Storage

在您需要的位置创建单区域或多区域标准存储桶 存储备份数据。

  1. 按照以下说明创建 Cloud Storage 存储桶:

    1. “Cloud Storage 存储分区”页面中,执行以下操作: 为存储桶命名
    2. 选择存储位置。
    3. 选择存储类别: 标准、Nearline、Coldline。
    4. 如果您选择 Nearline 或 Coldline Storage,请设置访问权限控制 模式更改为精细控制。对于 Standard 存储空间,请接受默认访问权限 控制模式设置为 Uniform
    5. 最后,请勿配置任何其他数据保护选项,点击 创建

      显示 Cloud Storage 存储桶详细信息的 Google Cloud 控制台页面。

  2. 接下来,将此存储桶添加到备份/恢复设备。前往 备份和灾难恢复管理控制台。

     https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/
     

  3. 选择管理 > 存储池菜单项。

     https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#pools
     
    显示“管理 > 存储池”菜单的备份和灾难恢复管理控制台页面。

  4. 点击最右侧的选项 +添加 OnVault 池

     https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#addonvaultpool
     

    1. 输入池名称
    2. 池类型字段中,选择 Google Cloud Storage
    3. 选择要挂接到 Cloud Storage 的设备 存储分区。
    4. 输入 Cloud Storage 存储桶名称。
    5. 点击保存

      显示“添加 OnVault 池”对话框的备份和灾难恢复管理控制台页面。

Persistent Disk 快照池

如果您使用标准或 SSD 选项部署了备份/恢复设备, Persistent Disk 快照池默认为 4TB。如果您的来源 数据库或文件系统需要更大的池,那么您可以修改 为已部署的备份/恢复设备添加一个新的 Persistent Disk,并创建新的自定义池或配置另一个 默认池。

  1. 打开管理 > 设备页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
    
  2. 修改备份服务器实例,然后点击 +添加新磁盘

    1. 为磁盘命名。
    2. 选择空白磁盘类型。
    3. 您可以根据需要选择标准、平衡或 SSD。
    4. 输入所需的磁盘大小。
    5. 点击保存

      显示如何添加新存储磁盘的备份和灾难恢复管理控制台页面。

  3. 转到管理 >备份和灾难恢复中的设备页面 管理控制台

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
    
  4. 右键点击设备名称,然后从 菜单。

    显示“设备”页面上的“配置设备”菜单选项的备份和灾难恢复管理控制台页面。

  5. 您可以将磁盘添加到现有快照池(扩展),也可以 可以创建新池(但是,请勿在同一存储分区中混用 Persistent Disk 类型 数据池)。如果展开,请点击要扩展的池的右上角图标 展开。

    备份和灾难恢复管理控制台页面,显示如何通过点击铅笔图标扩展快照池。

  6. 在此示例中,您将使用点击以添加池选项创建一个新池。 点击此按钮后,请等待 20 秒以打开下一页。

    备份和灾难恢复管理控制台页面,显示如何通过点击“点击以添加池”按钮创建新的快照池。

  7. 在此步骤中,配置新池。

    1. 为池命名,然后点击绿色的 + 图标以添加磁盘, 数据池。
    2. 点击提交
    3. 在以下情况下,请输入以大写形式 PROCEED 以确认 。
    4. 点击确认

      备份和灾难恢复对话框,显示创建快照池时需要输入的字段,例如“名称”和“磁盘”。

  8. 您现在使用永久性磁盘扩展或创建了池。

配置备份方案

借助备份方案,您可以配置两个关键元素,以备份任何 数据库、虚拟机或文件系统备份方案包含配置文件和模板。

  • 配置文件可让您定义何时备份内容以及备份时长 数据。
  • 模板提供了一个配置项,可让您决定 备份/恢复设备和存储池(Persistent Disk、Cloud Storage 等) 应用于备份任务。

创建开发者资料

  1. 在备份和灾难恢复管理控制台中,转到 备份方案 >个人资料页面上。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#manageprofiles
    
  2. 其中已经创建了两个配置文件。您可以将一个配置文件用于 Compute Engine 虚拟机快照,您可以修改另一个配置文件并使用 用于裸金属解决方案备份您可以拥有多份个人资料, 如果您要备份许多需要不同磁盘层级的数据库,这会非常有用 进行备份例如,您可以为固态硬盘(性能更高)、 还有一个用于标准永久性磁盘(标准性能)的池。对于每个 则可以选择其他快照池。

  3. 右键点击名为 LocalProfile 的默认配置文件,然后选择修改

    备份和灾难恢复管理控制台页面,显示如何修改默认的本地配置文件和创建新的配置文件。

  4. 进行以下更改:

    1. 使用更有意义的个人资料名称更新个人资料设置,并 说明。您可以指定要使用的磁盘层级,其中 Cloud Storage 存储桶或 说明了此配置文件的用途。
    2. 将快照池更改为您之前创建的扩展池或新池。
    3. 为此配置文件选择一个 OnVault 池(Cloud Storage 存储桶)。
    4. 点击保存配置文件

      备份和灾难恢复管理控制台页面,显示如何保存修改后的配置文件。

创建模板

  1. 在备份和灾难恢复管理控制台中,转到 备份方案 >模板菜单中。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#managetemplates
    
  2. 点击 +创建模板

    1. 为模板命名。
    2. 允许替换政策设置中选择
    3. 添加此模板的说明。
    4. 点击保存模板

      备份和灾难恢复管理控制台页面,显示如何创建备份方案模板。

  3. 在模板中,配置以下内容:

    1. 在右侧的政策部分中,点击 +添加
    2. 提供政策名称。
    3. 选中要执行政策的日期所对应的复选框,或者保留 默认设置为每天
    4. 修改要在该时间段内运行作业的时间窗口。
    5. 选择保留时间。
    6. 点击高级政策设置

      备份和灾难恢复管理控制台页面,显示如何为备份方案模板添加或更新政策。

  4. 如果您想要定期执行归档日志备份(针对 例如每 15 分钟一次),并将归档日志复制到 Cloud Storage,您需要启用以下政策设置:

    1. 如果您
    2. 如果需要,将启用数据库日志备份设置为
    3. RPO(分钟)设置为您需要的归档日志备份间隔时间。
    4. 日志备份保留期限(天)设置为所需的保留期限 。
    5. 复制日志(使用 Streamsnap 技术)设置为
    6. 如果您要将日志发送到 OnVault Pool,请将将日志发送到 OnVault Pool 设置为 Yes Cloud Storage 存储桶否则,请选择
    7. 点击保存更改

      显示建议的政策设置的备份和灾难恢复管理控制台页面。

  5. 点击更新政策以保存更改。

  6. 对于右侧的 OnVault,请执行以下操作:

    1. 点击 +Add(+添加)。
    2. 添加政策名称。
    3. 设置保留期限,单位可以为天、周、月或年。
    4. 点击更新政策

      备份和灾难恢复管理控制台页面,展示了如何为 OnVault 池创建和修改政策并添加保留期限计划。

  7. (可选)如果您需要添加更多保留选项,请创建 有关每周、每月和每年留存率的政策。添加其他保留 政策,请按以下步骤操作:

    1. 对于右侧的 OnVault,点击 +添加
    2. 添加政策名称。
    3. 在这些天的值更改为您要触发此操作的日期 作业。
    4. 设置保留期限,单位可以为天、周、月
    5. 点击更新政策

      备份和灾难恢复管理控制台页面,显示如何为 OnVault 池添加其他政策和保留计划。

  8. 点击保存模板。在以下示例中,您将看到一个 在 Persistent Disk 层级将备份保留 3 天(7 天)的政策 OnVault 作业,共计 4 周。每周备份在星期六晚上运行。

    备份和灾难恢复管理控制台页面,显示配置快照政策的结果。

备份 Oracle 数据库

Google Cloud 备份和灾难恢复架构提供 实现应用一致、永久增量的 Oracle 备份到 Google Cloud; 以及对数 TB Oracle 数据库的即时恢复和克隆。

Google Cloud 备份和灾难恢复使用以下 Oracle API:

  • RMAN image copy API - 数据文件的图片副本的恢复速度更快 因为数据文件的物理结构已存在。康复 Manager (RMAN) 指令 BACKUP AS COPY(备份 AS COPY)为所有数据创建映像副本 整个数据库的文件并保留数据文件格式。
  • ASM 和 CRS API - 使用自动存储管理 (ASM) 和集群 Ready Services (CRS) API,用于管理 ASM 备份磁盘组。
  • RMANarchive log Backup API - 此 API 会生成归档日志并进行备份 并将其从生产归档位置中完全清除

配置 Oracle 主机

设置 Oracle 主机的步骤包括安装代理、添加 配置主机以及发现 Oracle 数据库。一切就绪后,您就可以 将 Oracle 数据库迁移到备份和灾难恢复。

安装备份代理

安装备份和灾难恢复代理相对简单直接。您 只需在首次使用主机时安装代理,然后 后续升级可以在备份和灾难恢复用户中进行 界面。您需要以 root 用户或在经过 sudo 身份验证的会话中,以执行代理 安装。您无需重新启动主机即可完成安装。

  1. 从界面或通过 管理 >设备页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
    
  2. 右键点击备份/恢复设备的名称,然后选择 配置设备。此时会打开新的浏览器窗口。

    备份和灾难恢复管理控制台页面,显示如何选择“配置设备”菜单项。

  3. 点击 Linux 64 Bit 图标将备份代理下载到计算机 托管浏览器会话的托管服务提供商使用 scp(安全复制)将 将代理文件下载到 Oracle 主机进行安装。

    显示 Linux 64 位图标的备份和灾难恢复管理控制台页面,点击该图标可下载备份代理

  4. 或者,您可以将备份代理存储在 Cloud Storage 中 启用下载功能,并使用 wgetcurl 命令下载 将代理直接连接到您的 Linux 主机

    curl -o agent-Linux-latestversion.rpm https://storage.googleapis.com/backup-agent-images/connector-Linux-11.0.2.9595.rpm
    
  5. 使用 rpm -ivh 命令安装备份代理。

    请务必复制自动生成的密钥。 使用备份和灾难恢复管理控制台,您需要将 密钥。

    此命令的输出类似如下所示:

    [oracle@host `~]# sudo rpm -ivh agent-Linux-latestversion.rpm
    Verifying... ################################# [100%]
    Preparing... ################################# [100%]
    Updating / installing…
      1:udsagent-11.0.2-9595 ################################# [100%]
    Created symlink /etc/systemd/system/multi-user.target.wants/udsagent.service → /usr/lib/systemd/system/udsagent.service.
    Action Required:
    -- Add this host to Backup and DR management console to backup/recover workloads from/to this host. You can do this by navigating to Manage->Hosts->Add Host on your management console.
    -- A secret key is required to complete this process. Please use b010502a8f383cae5a076d4ac9e868777657cebd0000000063abee83 (valid for 2 hrs) to register this host.
    -- A new secret key can be generated later by running: '/opt/act/bin/udsagent secret --reset --restart
    
  6. 如果您使用 iptables 命令,请开放备份代理防火墙端口 (TCP 5106) 和 Oracle 服务端口 (TCP 1521):

    sudo iptables -A INPUT -p tcp --dport 5106 -j ACCEPT
    sudo iptables -A INPUT -p tcp --dport 1521 -j ACCEPT
    sudo firewall-cmd --permanent --add-port=5106/tcp
    sudo firewall-cmd --permanent --add-port=1521/tcp
    sudo firewall-cmd --reload
    

将主机添加到备份和灾难恢复

  1. 在备份和灾难恢复管理控制台中,打开管理 > 主机

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#hosts
    
    1. 点击 +添加主机
    2. 添加主机名。
    3. 添加主机 IP 地址,然后点击 + 按钮以确认 配置。
    4. 点击要添加主机的设备。
    5. 粘贴密钥。您必须在 2 小时内执行此任务 您安装备份代理并生成密钥。
    6. 点击添加以保存主机。

      备份和灾难恢复管理控制台页面,显示添加主机时需要输入的字段,例如名称、IP 地址和设备。

  2. 如果您收到错误或部分成功消息,请尝试执行以下操作 解决方法:

    显示部分成功的备份和灾难恢复管理错误消息。

    1. 备份代理加密密钥可能已超时。如果您没有 在创建后的两小时内将密钥添加到主机。您可以 使用以下命令在 Linux 主机上生成新的密钥 行语法:

      /opt/act/bin/udsagent secret --reset --restart
      
    2. 允许备份/恢复进程之间通信的防火墙 主机上安装的设备和代理可能未配置 正确。按照步骤打开备份代理防火墙的端口 和 Oracle 服务。

    3. Linux 主机的网络时间协议 (ntp) 配置可能是 配置有误。查看并确认 NTP 设置正确无误。

  3. 解决根本问题后,您应该能看到证书状态 从“不适用”更改为“有效”。

    显示有效证书状态的备份和灾难恢复管理控制台页面。

配置主机

  1. 在备份和灾难恢复管理控制台中,打开管理 > 主机

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#hosts
    
  2. 右键点击要备份 Oracle 数据库的 Linux 主机 然后选择修改

  3. 点击暂存磁盘格式,然后选择 NFS

    备份和灾难恢复管理控制台页面,显示如何选择 NFS 作为暂存磁盘格式。

  4. 向下滚动到已发现的应用部分,然后点击 发现应用以启动设备到代理的发现过程。

    备份和灾难恢复管理控制台页面,显示如何开始发现设备和代理之间的映射的过程。

  5. 点击发现以开始此过程。发现过程 5 分钟。完成后,发现的文件系统和 Oracle 数据库 会显示在应用窗口中

    备份和灾难恢复管理控制台页面,显示备份和灾难恢复系统发现的应用。

  6. 点击保存以更新对主机的更改。

准备 Linux 主机

在基于 Linux 操作系统的主机中安装 iSCSI 或 NFS 实用程序包, 可以将暂存磁盘映射到写入备份数据的设备。使用 安装 iSCSI 和 NFS 实用程序。虽然您可以使用 或两组实用程序,此步骤可确保您拥有所需的 供您在需要时使用。

  • 如需安装 iSCSI 实用程序,请运行以下命令:

    sudo yum install -y iscsi-initiator-utils
    
  • 如需安装 NFS 实用程序,请运行以下命令:

    sudo yum install -y nfs-utils
    

    准备 Oracle 数据库

本指南假定您已设置 Oracle 实例和数据库 并对其进行配置Google Cloud 备份和灾难恢复支持保护 文件系统、ASM、真实应用集群 (RAC) 以及 许多其他配置如需了解详情,请参阅 Oracle 的备份和灾难恢复 数据库

在开始备份作业之前,您需要进行一些配置。以下部分 任务是可选的,但我们建议您采用以下设置, 效果:

  1. 使用 SSH 连接到 Linux 主机,并以 Oracle 用户身份登录,网址为 su 权限。
  2. 将 Oracle 环境设置为您的特定实例:

    . oraenv
    ORACLE_SID = [ORCL] ?
    The Oracle base remains unchanged with value /u01/app/oracle
    
  3. 使用 sysdba 账号连接到 SQL*Plus:

    sqlplus / as sysdba
    
  4. 使用以下命令启用 ARCHIVELOG 模式。 此命令的输出类似于以下内容:

    SQL> shutdown
    
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    
    SQL> startup mount
    
    ORACLE instance started.
    
    Total System Global Area 2415918600 bytes
    Fixed Size 9137672 bytes
    Variable Size 637534208 bytes
    Database Buffers 1761607680 bytes
    Redo Buffers 7639040 bytes
    Database mounted.
    
    SQL> alter database archivelog;
    
    Database altered.
    
    SQL> alter database open;
    
    Database altered.
    
    SQL> archive log list;
    Database log mode Archive Mode
    Automatic archival Enabled
    Archive destination /u01/app/oracle/product/19c/dbhome_1/dbs/arch
    Oldest online log sequence 20
    Next log sequence to archive 22
    Current log sequence 22
    
    SQL> alter pluggable database ORCLPDB save state;
    
    Pluggable database altered.
    
  5. 为 Linux 主机配置 Direct NFS:

    cd $ORACLE_HOME/rdbms/lib
    make -f [ins_rdbms.mk](http://ins_rdbms.mk/) dnfs_on
    
  6. 配置块更改跟踪。请先检查是否已启用 已停用。以下示例显示块更改跟踪已停用:

    SQL> select status,filename from v$block_change_tracking;
    
    STATUS     FILENAME
    ---------- ------------------------------------------------------------------
    DISABLED
    
    使用 ASM 时,请发出以下命令:
    SQL> alter database enable block change tracking using file +ASM_DISK_GROUP_NAME/DATABASE_NAME/DBNAME.bct;
    
    Database altered.
    

    使用文件系统时,请发出以下命令:

    SQL> alter database enable block change tracking using file '$ORACLE_HOME/dbs/DBNAME.bct';;
    
    Database altered.
    

    验证块更改跟踪现已启用:

    SQL> select status,filename from v$block_change_tracking;
    
    STATUS     FILENAME
    ---------- ------------------------------------------------------------------
    ENABLED    +DATADG/ORCL/CHANGETRACKING/ctf.276.1124639617
    

保护 Oracle 数据库

  1. 在备份和灾难恢复管理控制台中,转到 应用管理器 >应用页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
    
  2. 右键点击要保护的 Oracle 数据库名称,然后选择 管理备份方案

  3. 选择要使用的模板和配置文件,然后点击 应用备份方案

    备份和灾难恢复管理控制台页面,显示如何选择模板和配置文件,然后应用备份方案。

  4. 出现提示时,设置特定于 Oracle 和 RMAN 的所有高级设置。 是配置所需的完成后,点击 应用备份方案

    例如,通道数量默认为 2。因此,如果你有 则可以增加并行的通道数 备份操作,并将此值设为较大的数字。

    要了解有关高级设置的详细信息,请参阅配置应用详细信息和 Oracle 数据库设置

    显示备份方案的高级选项的备份和灾难恢复对话框。

备份和灾难恢复对话框,显示如何选择将 ASM 格式转换为文件系统格式。

除这些设置外,您还可以更改暂存磁盘使用的协议 将磁盘从 Backup Appliance 映射到主机。转到管理 >主持人 页面,然后选择您要修改的主机。选中 将磁盘格式暂存为客户机。系统默认选择屏蔽格式 通过 iSCSI 映射暂存磁盘,否则可以将其更改为 NFS,然后 暂存磁盘则使用 NFS 协议。

默认设置取决于您的数据库格式。如果您使用 ASM,系统会使用 iSCSI 向备份发送 ASM 磁盘组。如果您使用文件系统,系统 使用 iSCSI 将备份发送到文件系统。如果您想使用 NFS 或 Direct NFS (dNFS),则必须将暂存磁盘的主机设置更改为 NFS。相反,如果您使用默认设置,则所有备份暂存磁盘都会使用 块存储格式和 iSCSI。

启动备份作业

  1. 在备份和灾难恢复管理控制台中,转到 应用管理器 >应用页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
    
  2. 右键点击要保护的 Oracle 数据库并选择 管理备份方案

  3. 点击右侧的快照菜单,然后点击立即运行。开始时间 按需备份作业

    备份和灾难恢复管理控制台页面,显示如何点击“快照”菜单并截取快照。

  4. 如需监控备份作业的状态,请转到监控 >作业菜单并查看作业 状态。作业可能需要 5 到 10 秒才会显示在作业列表中。通过 以下是一个正在运行的作业的示例:

    备份和灾难恢复管理控制台页面,显示正在运行的备份作业。

  5. 作业运行成功后,您可以使用元数据来查看 特定作业。

    • 应用过滤条件并添加搜索字词,以查找您感兴趣的作业。通过 以下示例使用成功过去一天过滤条件,以及 并搜索 test1 主机。

    备份和灾难恢复管理控制台页面,显示如何使用过滤条件搜索备份作业。

  6. 如需仔细查看特定作业,请在作业中点击 列。此时会打开一个新窗口。如下面的示例所示,每个 备份作业会捕获大量信息。

    备份和灾难恢复管理控制台页面,显示备份作业的详细信息。

装载和恢复 Oracle 数据库

Google Cloud 备份和灾难恢复具有许多不同的功能 访问 Oracle 数据库的副本。其中的两种主要方法为:

  • 应用感知装载
  • 恢复(装载并迁移,以及传统恢复)

每种方法都有各自的优势,因此您需要选择 具体应用场景、性能要求和使用方式 您需要保留数据库副本。以下部分介绍了 针对每项功能给出的建议

应用感知装载

使用装载可以快速访问 Oracle 数据库的虚拟副本。 如果对性能不要求, 您可以配置装载, 副本的有效期仅为几小时到几天。

安装支架的一个主要优势是 额外存储空间而是会使用备份磁盘中的快照 池,可以是 Persistent Disk 上的快照池,也可以是 Cloud Storage使用虚拟副本快照功能可最大限度地减少 因为不需要先复制数据。 备份磁盘会处理所有读取操作,快照池中的磁盘会存储所有 写入。因此,装载虚拟副本可以快速访问, 覆盖备份磁盘副本。底座非常适合开发、测试和 需要先验证架构更改或更新的 DBA 活动 并将其部署到生产环境中。

装载 Oracle 数据库

  1. 在备份和灾难恢复管理控制台中,转到 备份和恢复 >恢复页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#recover/selectapp
    
  2. Application 列表中,找到要装载的数据库, 右键点击数据库名称,然后点击下一步

    “备份和灾难恢复”管理控制台页面,显示如何在“备份和恢复”页面上查找数据库。

  3. 此时将显示 Timeline Ramp 视图,并显示所有可用的 包含特定时间点的图像。您还可以往回滚动以查看长期留存率 部分图片。系统会选择 默认设置为图片

    备份和灾难恢复管理控制台页面,显示备份映像的时间轴坡道视图。

  4. 如果您希望使用表格视图查看时间点图像,请点击 表格选项更改视图:

    备份和灾难恢复管理控制台页面,显示如何点击“表格”标签页以在表格中查看时间点备份映像。

  5. 找到所需映像,然后选择装载

    备份和灾难恢复管理控制台页面,显示如何选择、装载和恢复备份映像。

  6. 为装载的数据库选择应用选项

    1. 从下拉菜单中选择目标主机。主持人 列表中。
    2. (可选)输入标签。
    3. “目标数据库 SID”字段中,输入目标的标识符 数据库。
    4. 用户名设置为 oracle。此名称会成为 身份验证。
    5. 输入 Oracle 主目录。在此示例中,请使用 /u01/app/oracle/product/19c/dbhome_1
    6. 如果您配置要备份的数据库日志, 前滚时间可用。点击时钟/时间选择器,然后 选择前滚点。
    7. 使用恢复功能恢复默认处于启用状态。此选项会将 系统将为您打开数据库
  7. 输入完信息后,点击提交即可开始 安装过程

    备份和灾难恢复管理控制台页面,显示装载备份映像需要填写的字段。

监控作业进度和成功

  1. 您可以打开监控 > 作业页面,监控正在运行的作业。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
    

    该页面显示状态和作业类型。

    显示“监控 > 作业”页面的备份和灾难恢复管理控制台页面。

  2. 装载作业完成后,您可以点击 Job Number

    显示作业详细信息的备份和灾难恢复对话框。

  3. 如需查看您创建的 SID 对应的 pmon 进程,请登录目标主机 然后发出 ps -ef |grep pmon 命令。在以下输出示例中, SCHTEST 数据库可正常运行,且进程 ID 为 173953

    [root@test2 ~]# ps -ef |grep pmon
    oracle 1382 1 0 Dec23 ? 00:00:28 asmpmon+ASM
    oracle 56889 1 0 Dec29 ? 00:00:06 ora_pmon_ORCL
    oracle 173953 1 0 09:51 ? 00:00:00 ora_pmon_SCHTEST
    root 178934 169484 0 10:07 pts/0 00:00:00 grep --color=auto pmon

Unmount an Oracle database

After you finish using the database, you should unmount and delete the database. There are two methods to find a mounted database:

  1. Go to App Manager > Active Mounts page.

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#activemounts
    

    此页面包含所有已装载的应用(文件系统、 和数据库)。

    1. 右键点击要清理的装载点,然后选择 从菜单中卸载并删除。此操作不会删除备份 数据。只会从目标主机中移除已装载的虚拟数据库 和包含存储的写入的快照缓存磁盘 数据库。

      备份和灾难恢复管理控制台页面,显示“应用管理器 > 活跃装载”页面中的“卸载并删除”菜单。

  2. 打开应用管理器 > 应用页面。

     https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
     

    1. 右键点击源应用(数据库)并选择访问
    2. 在左侧斜坡上,您可以看到一个内含数字的灰色圆圈, 表示从该时间点开始的有效装载数量。点击 系统会显示一个新菜单
    3. 点击操作
    4. 点击卸载并删除
    5. 在下一个屏幕上点击提交并确认此操作。
    6. 几分钟后,系统会从目标中移除数据库 以及清理和移除所有磁盘。此操作会释放所有磁盘 快照池中用于写入重做磁盘的 有效装载。

      备份和灾难恢复管理控制台页面,显示如何卸载并删除备份映像。

  3. 您可以像监控任何其他作业一样监控卸载作业。前往 监控 >作业菜单,用于监控作业的卸载进度 并确认该作业已完成

     https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
     
    备份和灾难恢复管理控制台页面,显示如何监控卸载并删除作业的进度。

  4. 如果您不小心手动删除了 Oracle 数据库,或将 运行卸载并删除作业之前,请执行 再次卸载并删除作业,并选择强制卸载选项, 确认屏幕。此操作会强制移除重做暂存磁盘 并从快照池中删除磁盘。

    备份和灾难恢复管理控制台页面,显示如何强制执行卸载并删除作业。

恢复

在出现问题或损坏时,您可以使用恢复功能来恢复生产数据库 因此您需要将数据库的所有文件从 备份副本。您通常会在灾难类型事件发生后执行恢复, 非正式版测试副本。在这种情况下,您的客户通常会 您需要等到您将先前的文件复制回源主机之后, 他们就会重启数据库不过,Google Cloud 备份和灾难恢复还支持恢复功能(复制文件并启动 数据库)以及装载和迁移功能,即在虚拟机上 因此您可以将数据文件复制到本地计算机,同时 数据库已装载并且可供访问装载和迁移功能对于 恢复时间目标 (RTO) 较短的场景。

装载并迁移

基于装载并迁移的恢复分为两个阶段:

  1. 第 1 阶段 - 恢复装载阶段: 以便从装载的副本开始对数据库进行即时访问。
  2. 第 2 阶段 -恢复迁移阶段 将数据库迁移到生产存储位置,同时将数据库 处于在线状态。

恢复装载 - 第 1 阶段

此阶段可让您从所选图片即时访问数据库 备份/恢复设备提供的存储空间。

  • 所选备份图片的副本已映射到目标数据库服务器 并根据源数据库提交到 ASM 或文件系统层 备用图片格式。
  • 使用 RMAN API 执行以下任务:
    • 将控制文件和重做日志文件恢复到指定的本地控件 文件和重做文件位置(ASM 磁盘组或文件系统)。
    • 将数据库切换到 备份/恢复设备
    • 将所有可用的归档日志前滚到指定的恢复点。
    • 以读写模式打开数据库。
  • 数据库从备份的映像的映射副本运行,该副本由 备份/恢复设备
  • 数据库的控制文件和重做日志文件位于 所选本地生产存储位置(ASM 磁盘组或文件系统) 目标。
  • 成功恢复装载操作后,该数据库将可供 生产运营。您可以使用 Oracle 在线数据文件移动 API 来迁移 将数据返回生产存储位置(ASM 磁盘组或文件) 系统)。

恢复迁移 - 第 2 阶段

将数据库数据文件在线移动到生产存储空间:

  • 数据迁移在后台运行。使用 Oracle 在线数据文件移动 API 迁移数据
  • 您需要移动 所选目标数据库存储空间(ASM 磁盘组或文件)的备份 系统)。
  • 迁移作业完成后,系统会移除并取消映射 备份和灾难恢复显示的备份映像副本(ASM 磁盘组或文件) 系统),而数据库从您的生产存储空间运行。

如需详细了解装载和迁移恢复,请参阅: 将 Oracle 备份映像装载和迁移到任何目标,以便即时恢复

恢复 Oracle 数据库

  1. 在备份和灾难恢复管理控制台中,转到 备份和恢复 >恢复页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#recover/selectapp
    
  2. Application 列表中,右键点击您要创建的数据库的名称 然后选择下一步

    备份和灾难恢复管理控制台页面,显示如何选择要恢复的数据库。

  3. 此时将显示 Timeline Ramp 视图,其中显示了所有可用的 包含特定时间点的图像。如果您需要查看 显示未在梯度中的长期保留图像。系统会始终 默认选择最新的映像。

    如需恢复映像,请点击装载菜单,然后选择恢复

    备份和灾难恢复管理控制台页面,显示如何恢复备份映像。

  4. 选择恢复选项。

    1. 选择前滚时间。点击时钟并选择所需的时间 。
    2. 输入要用于 Oracle 的用户名。
    3. 如果您的系统使用数据库身份验证,请输入密码。
    4. 如需启动作业,请点击提交

      备份和灾难恢复管理控制台页面,显示如何选择恢复选项。

  5. 输入 DATA LOSS,确认您要覆盖源数据库。 然后点击确认

    备份和灾难恢复管理控制台页面,显示如何覆盖源数据库并确认某些数据将丢失。

监控作业进度和成功

  1. 如需监控作业,请打开监控 > 作业页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
    
  2. 作业完成后,点击作业编号以查看作业详情 和元数据

    显示作业详细信息的备份和灾难恢复对话框。

保护恢复的数据库

数据库恢复作业完成后,系统不会备份 恢复后自动管理数据库。换言之,当您恢复 备份计划不会激活, 默认值。

  1. 如需验证备份方案是否未运行,请转到 应用管理器 >应用页面。

    https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
    
  2. 在列表中找到恢复的数据库。保护图标从 绿色变为黄色,表示系统未安排运行 数据库的备份作业。

    备份和灾难恢复管理控制台页面,显示如何通过查找黄色图标来识别恢复的数据库。

  3. 要保护恢复的数据库,请在应用列中查找 您要保护的数据库。右键点击数据库名称并选择 管理备份方案

    备份和灾难恢复管理控制台页面,显示如何从“应用”页面中选择“管理备份方案”菜单项。

  4. 为恢复的数据库重新启用计划的备份作业。

    1. 点击应用菜单,然后选择启用
    2. 确认所有 Oracle 高级设置,然后点击启用备份方案

      备份和灾难恢复管理控制台页面,显示如何为恢复的数据库启用备份方案。

问题排查和优化

本部分提供了一些有用的提示,可帮助您 Oracle 备份、优化系统并考虑针对 RAC 和 Data Guard 环境。

排查 Oracle 备份问题

Oracle 配置包含多个依赖项,以确保备份任务 成功。以下步骤提供了一些有关如何配置 Oracle 实例、监听器和数据库,确保成功。

  1. 确认您想要的服务和实例的 Oracle 监听器 要保护的对象的配置已配置且正在运行,请发出 lsnrctl status 命令:

    [oracle@test2 lib]$ lsnrctl status
    
    LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 29-DEC-2022 07:43:37
    
    Copyright (c) 1991, 2021, Oracle. All rights reserved.
    
    Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
    STATUS of the LISTENER
    ------------------------
    Alias                     LISTENER
    Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
    Start Date                23-DEC-2022 20:34:17
    Uptime                    5 days 11 hr. 9 min. 20 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u01/app/19c/grid/network/admin/listener.ora
    Listener Log File         /u01/app/oracle/diag/tnslsnr/test2/listener/alert/log.xml
    Listening Endpoints Summary...
     (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=test2.localdomain)(PORT=1521)))
     (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
    Services Summary...
    Service "+ASM" has 1 instance(s).
     Instance "+ASM", status READY, has 1 handler(s) for this service...
    Service "+ASM_DATADG" has 1 instance(s).
     Instance "+ASM", status READY, has 1 handler(s) for this service...
    Service "ORCL" has 1 instance(s).
     Instance "ORCL", status READY, has 1 handler(s) for this service...
    Service "ORCLXDB" has 1 instance(s).
     Instance "ORCL", status READY, has 1 handler(s) for this service...
    Service "f085620225d644e1e053166610ac1c27" has 1 instance(s).
     Instance "ORCL", status READY, has 1 handler(s) for this service...
    Service "orclpdb" has 1 instance(s).
     Instance "ORCL", status READY, has 1 handler(s) for this service...
    The command completed successfully
    
  2. 验证您已将 Oracle 数据库配置为 ARCHIVELOG 模式。如果 如果数据库以不同的模式运行,您可能会看到失败的作业 错误代码 5556 消息:

    显示“作业详细信息”的备份和灾难恢复对话框,其中包含错误代码 5556。

    export ORACLE_HOME=ORACLE_HOME_PATH
    export ORACLE_SID=DATABASE_INSTANCE_NAME
    export PATH=$ORACLE_HOME/bin:$PATH
    
    sqlplus / as sysdba
    SQL> set tab off
    SQL> archive log list;
    
    Database log mode             Archive Mode
    Automatic archival            Enabled
    Archive destination           +FRA
    Oldest online log sequence    569
    Next log sequence to archive  570
    Current log sequence          570
    
  3. 在 Oracle 数据库上启用块更改跟踪。虽然这不是 解决方案正常运行的必要条件,启用块更改跟踪可防止 需要进行大量的后处理工作 更改块并帮助减少备份作业时间:

    SQL> select status,filename from v$block_change_tracking;
    
    STATUS     FILENAME
    ---------- ------------------------------------------------------------------
    ENABLED    +DATADG/ORCL/CHANGETRACKING/ctf.276.1124639617
    
  4. 验证数据库使用 spfile

    sqlplus / as sysdba
    
    SQL> show parameter spfile
    
    NAME               TYPE        VALUE
    ------------------ ----------- ------------
    spfile             string      +DATA/ctdb/spfilectdb.ora
    
  5. 为 Oracle 数据库主机启用 Direct NFS (dnfs)。虽然并非强制性要求 如果您需要以最快的方法备份和恢复 Oracle 数据库, dnfs 是首选选项。要进一步提高吞吐量,您可以 更改每个主机的暂存磁盘 启用 dnfs

  6. 配置 tnsnames 以解析 Oracle 数据库主机。如果没有 那么 RMAN 命令通常会失败以下是输出示例:

    [oracle@test2 lib]$ tnsping ORCL
    
    TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 29-DEC-2022 07:55:18
    
    Copyright (c) 1997, 2021, Oracle. All rights reserved.
    
    Used parameter files:
    
    Used TNSNAMES adapter to resolve the alias
    Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = test2.localdomain)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL)))
    OK (0 msec)
    
  7. SERVICE_NAME 字段对于 RAC 配置非常重要。服务 name 表示用于向外部资源通告系统的别名 与集群通信的物理服务器在详细信息和设置选项中 对于受保护的数据库,请使用 Oracle 服务名称的高级设置。输入具体服务名称 您要在运行备份作业的节点上使用的实例组。

    Oracle 数据库仅会将服务名称用于数据库身份验证。 数据库不使用服务名称进行操作系统身份验证。对于 例如,数据库名称可以是 CLU1_S,实例名称可以是 为 CLU1_S

    • 如果 Oracle 服务名称未列出,请在 位于 tnsnames.ora 文件中的指定服务器 $ORACLE_HOME/network/admin或在 $GRID_HOME/network/admin添加 以下条目:

      CLU1_S =
      (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = )(PORT = 1521))
      (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = CLU1_S)
      ) )
      
    • 如果 tnsnames.ora 文件位于非标准位置,请提供 应用详情和设置页面中文件的绝对路径 配置 Oracle 数据库的应用详细信息和设置中所述。

    • 验证您是否为数据库配置了服务名称条目 正确。登录 Oracle Linux 并配置 Oracle 环境:

      TNS_ADMIN=TNSNAMES.ORA_FILE_LOCATION
      tnsping CLU1_S
      
    • 请检查数据库用户账号,确保成功连接到 备份和灾难恢复应用:

      sqlplus act_rman_user/act_rman_user@act_svc_dbstd as sysdba
      
    • 应用详情和设置页面(如 Oracle 数据库的应用详细信息和设置, 输入您创建的服务名称 (CLU1_S), Oracle 服务名称字段:

      “应用详细信息和设置”的备份和灾难恢复对话框,其中显示了“Oracle 服务名称”字段的位置。

  8. 错误代码 870 显示“在 NFS 暂存磁盘上使用 ASM 的 ASM 备份 不受支持。”如果您收到此错误,则说明您没有正确的 在详细信息和设置中,为所需的实例配置 保护。在此错误配置中,主机将 NFS 用作暂存磁盘, 但源数据库在 ASM 上运行。

    显示一个错误配置的备份和灾难恢复对话框,其中 NFS 主机暂存磁盘尝试使用 ASM 数据库。如需解决此问题,请把“将 ASM 转换为文件系统”设置更改为“是”。

    要解决此问题,请将将 ASM 格式转换为文件系统格式字段 更改为。更改此设置后,重新运行备份作业。

  9. 错误代码 15 告知您备份和灾难恢复系统“无法 连接到备份主机”如果您收到此错误,则表示存在 三个问题:

    • 备份/恢复设备和主机之间的防火墙 您安装的代理不允许 TCP 端口 5106(正在监听的代理 端口)。
    • 未安装代理。
    • 代理未在运行。

    要解决此问题,请根据需要重新配置防火墙设置 确认代理正在运行。修复根本原因后,请运行 service udsagent status 命令。以下输出示例显示 备份和灾难恢复代理服务是否正常运行:

    [root@test2 ~]# service udsagent status
    Redirecting to /bin/systemctl status udsagent.service
    udsagent.service - Google Cloud Backup and DR service
    Loaded: loaded (/usr/lib/systemd/system/udsagent.service; enabled; vendor preset: disabled)
    Active: active (running) since Wed 2022-12-28 05:05:45 UTC; 2 days ago
    Process: 46753 ExecStop=/act/initscripts/udsagent.init stop (code=exited, status=0/SUCCESS)
    Process: 46770 ExecStart=/act/initscripts/udsagent.init start (code=exited, status=0/SUCCESS)
    Main PID: 46789 (udsagent)
    Tasks: 8 (limit: 48851)
    Memory: 74.0M
    CGroup: /system.slice/udsagent.service
     ├─46789 /opt/act/bin/udsagent start   
     └─60570 /opt/act/bin/udsagent start
    
    Dec 30 05:11:30 test2 su[150713]: pam_unix(su:session): session closed for user oracle
    Dec 30 05:11:30 test2 su[150778]: (to oracle) root on none
    
  10. 备份中的日志消息可帮助您诊断问题。您可以访问 运行备份作业的源主机上的日志。对于 Oracle 数据库 /var/act/log中有两个主要的日志文件 目录:

    • UDSAgent.log–Google Cloud 备份和灾难恢复代理日志, 记录 API 请求、正在运行的作业统计信息和其他详细信息。
    • SID_rman.log – 记录所有 RMAN 命令的 Oracle RMAN 日志。

其他 Oracle 注意事项

为 Oracle 数据库实施备份和灾难恢复时,请注意 部署 Data Guard 和 RAC 时需要考虑的事项。

Data Guard 注意事项

您可以备份 Data Guard 主节点和备用节点。但是,如果您选择 只保护数据库免受备用节点的影响,您需要使用 返回 Oracle 数据库身份验证而不是操作系统身份验证 启动数据库

RAC 注意事项

备份和灾难恢复解决方案不支持 在 RAC 数据库中有多个节点(如果暂存磁盘设置为 NFS 模式)。如果您的 系统需要从多个 RAC 节点进行并发备份,请使用 Block (iSCSI) 作为暂存磁盘模式,并针对每个主机进行此设置。

对于使用 ASM 的 Oracle RAC 数据库,您必须将快照控制文件 共享磁盘中的数据。要验证此配置,请连接到 RMAN 并运行 show all 命令:

rman target /

RMAN> show all
如果快照控制文件的位置不正确,请重新配置。对于 请对带有 使用本地文件系统的 **ctdb** 的“db_unique_name”:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/mnt/ctdb/snapcf_ctdb.f';

在 RAC 环境中,您必须将快照控制文件映射到共享 ASM 磁盘组要将文件分配给 ASM 磁盘组,请使用 Configure Snapshot Controlfile Name 命令:

CONFIGURE SNAPSHOT CONTROLFILE NAME TO '+/snap_.f';

建议

根据您的要求,您可能需要针对 影响整体解决方案的某些功能。一些决定 进而影响效果,例如选择标准 永久性磁盘 (pd-standard) 或性能永久性磁盘 (pd-ssd) 备份/恢复设备快照池的数据

在本部分中,我们会介绍 建议的选择,以帮助您确保 提高 Oracle 数据库备份吞吐量。

选择最佳机器类型和永久性磁盘类型

将备份/恢复设备与文件系统等应用结合使用时 或数据库,则您可以根据主机运行速度来测量性能, 实例在 Compute Engine 实例之间的数据传输。

  • Compute Engine Persistent Disk 设备速度基于三个指标 机器类型、挂接到指定节点的内存总量 以及实例的 vCPU 数量
  • 实例中的 vCPU 数量决定了分配给 Compute Engine 实例速度范围为 1 Gbps 对于 8 个或更多 vCPU,最高可达到 16 Gbps。
  • 结合这些限制,Google Cloud 备份和灾难恢复默认设置为 使用 e2-standard-16 作为标准大小的机器类型 备份/恢复设备从这里开始,您有三种选择 用于磁盘分配:

多种选择

池磁盘

最大持续写入

最大持续读取

最低

10 GB

不适用

不适用

标准

4096 GB

400 MiB/秒

1200 MiB/秒

SSD

4096 GB

1000 MiB/秒

1200 MiB/秒

Compute Engine 实例最多会将所分配网络的 60% 用于 挂接的永久性磁盘的 I/O,预留 40% 用于其他用途。对于 详情请参阅影响性能的其他因素

建议:选择 e2-standard-16 机器类型和最低数量的机器类型 4096 GB 的 PD-SSD 性能在备份/恢复方面表现最佳 电器。第二种方法是选择 n2-standard-16 机器 备份/恢复设备的类型。通过这个选项 性能优势在 10-20% 的范围内,但确实会产生额外的费用。 如果这与您的用例相符,请与 Cloud Customer Care 联系 进行更改。

优化快照

要提高单个备份/恢复设备的效率,您可以运行 来自多个来源的并发快照作业。每个作业都会 速度。但是,有了足够的作业,您可以实现 快照池中的永久性磁盘卷

将 iSCSI 用作暂存磁盘时,您可以备份单个大型实例 到持续写入速度约为 300-330MB/s 的备份/恢复设备。 在我们的测试中,我们发现在 Google Cloud 上,无论是 2TB 还是 80TB, 快照(假设您同时配置了来源主机和备份/恢复) 并且位于同一区域和可用区中。

选择正确的暂存磁盘

如果您需要出色的性能和吞吐量 相对于 iSCSI 作为用于 Oracle 的暂存磁盘的显著优势 数据库备份Direct NFS 整合了 TCP 连接数, 可提高可伸缩性和网络性能

为 Oracle 数据库启用直接 NFS 时,请配置足够的来源 CPU(例如 8 个 vCPU 和 8 个 RMAN 通道),并建立 10GB 链路 部署在裸金属解决方案区域级扩展与 Google Cloud 之间的连接, 可以备份单个 Oracle 数据库,吞吐量在 700-900 MB/秒RMAN 恢复速度也受益于 Direct NFS,其中的 吞吐量级别达到 850 MB/秒及以上。

平衡费用和吞吐量

另外请务必注意,所有备份数据都存储在 写入备份/恢复设备快照池,这样做是为了减少 费用。这种压缩优势的性能开销微不足道。 不过,对于加密数据 (TDE) 或高度压缩的数据集, 或许是可衡量的,但对您的吞吐量数据有微小影响。

了解影响网络和备份服务器性能的因素

以下几项会影响 Oracle on 裸金属解决方案与 备份服务器:

闪存

与 Google Cloud Persistent Disk 类似, 为裸金属解决方案系统提供存储空间 提高 I/O 能力 决定。您分配的存储空间越多 I/O 的效率越高为获得一致的结果,我们建议您在 至少 8 TB 的闪存。

网络延迟

Google Cloud 备份和灾难恢复备份作业对 裸金属解决方案主机与备份/恢复服务之间的网络延迟 Google Cloud 中的应用。延迟时间的微小增加可能会导致 备份和恢复时间的变化。不同的 Compute Engine 可用区 为裸金属解决方案主机提供不同的网络延迟时间。很好 测试每个区域的备份/恢复设备的最佳位置。

使用的处理器数量

裸金属解决方案服务器有多种大小。 我们建议您根据可用的 CPU 来扩缩 RMAN 频道,使用 提升速度。

Cloud Interconnect

裸金属解决方案与 Google Cloud 之间的混合互连 具有多种速率,例如 5 Gbps、10 Gbps 和 2x10 Gbps, 提升性能还可以将 专用于备份和恢复的专用互连链接 操作。建议希望隔离自己的 来自可能遍历同一资源的数据库或应用流量的备份流量 备份和恢复操作所需的全部带宽, 对确保您实现恢复点目标 (RPO) 和 恢复时间目标 (RTO)。

后续步骤

以下是有关 Google Cloud 的一些其他链接和信息 可能会对您有所帮助的备份和灾难恢复功能。