解决方案指南:适用于裸金属解决方案上的 Oracle 的 Google Cloud 备份和灾难恢复
概览
如需为裸金属解决方案环境中的 Oracle 数据库提供弹性,您需要制定明确的数据库备份和灾难恢复策略。为了帮助您满足这一要求,Google Cloud 的解决方案架构师团队对 Google Cloud 备份和灾难恢复服务进行了广泛的测试,并将其结果汇总到本指南中。因此,我们将向您介绍使用备份和灾难恢复服务在裸金属解决方案环境中部署、配置和优化 Oracle 数据库的备份和恢复选项的最佳方法。我们还将分享测试结果中的一些性能数据,以便您有一个基准数据与自己的环境进行比较。 如果您是后备管理员、Google Cloud 管理员或 Oracle DBA,本指南会很有用。
背景
2022 年 6 月,解决方案架构师团队开始为企业客户进行 Google Cloud 备份和灾难恢复的概念验证 (PoC) 演示。为了满足他们的成功标准,我们需要支持恢复他们 50 TB Oracle 数据库,并在 24 小时内恢复数据库。
这一目标带来了许多挑战,但参与 POC 的大多数人认为我们可以实现这一结果,并且应该继续推进该 POC。我们认为风险相对较低,因为我们之前来自备份和灾难恢复工程团队的测试数据表明,可以实现这些结果。我们还与客户分享了测试结果,让他们能够放心地继续进行 POC。
在 PoC 中,我们学习了如何在裸金属解决方案方案环境中成功配置多个元素,包括 Oracle、Google Cloud 备份和灾难恢复、存储空间以及区域扩展链接。通过遵循我们学到的最佳实践,您可以实现自己的成功成果。
如果要从本文中得到整体结果,“您的作用可能会因人而异”是一种非常好的方法。我们的目标是分享一些知识,让您了解我们学到的知识、应该关注的方面、应该避免的事情,以及如果没有看到想要的效果或结果,需要调查哪些领域。我们希望本指南可帮助您建立对所提解决方案的信心,并使您的要求得到满足。
架构
图 1 简要显示了您在部署备份和灾难恢复,以保护在裸金属解决方案环境中运行的 Oracle 数据库时,需要构建的基础架构。
图 1:用于在裸金属解决方案环境中将备份和灾难恢复与 Oracle 数据库结合使用的组件
如上图所示,此解决方案需要以下组成部分:
- 裸金属解决方案区域扩展 -可让您在 Google Cloud 数据中心相邻的第三方数据中心运行 Oracle 数据库,并使用现有的本地软件许可。
- 备份和灾难恢复服务项目 - 使您能够在 Cloud Storage 存储分区中托管备份/恢复设备以及备份裸金属解决方案和 Google Cloud 工作负载。
- Compute Engine 服务项目 - 为您提供运行 Compute Engine 虚拟机的位置。
- 备份和灾难恢复服务 - 提供备份和灾难恢复管理控制台,可让您维护备份和灾难恢复。
- 宿主项目 - 可让您在共享 VPC 中创建区域子网,该子网可以将裸金属解决方案方案区域扩展连接到备份和灾难恢复服务、备份/恢复设备、Cloud Storage 存储分区和 Compute Engine 虚拟机。
安装 Google Cloud 备份和灾难恢复
备份和灾难恢复解决方案至少需要以下两个主要组件才能运行该解决方案:
- 备份和灾难恢复管理控制台 - 一个 HTML 5 界面和 API 端点,可让您在 Google Cloud 控制台中创建和管理备份。
- 备份/恢复设备 - 此设备充当执行备份的任务工作器,用于装载和恢复类型的任务。
Google Cloud 管理备份和灾难恢复管理控制台。您需要在服务提供方项目中部署管理控制台(Google Cloud 管理端),并在服务使用方项目(客户端)中部署备份/恢复设备。如需详细了解备份和灾难恢复,请参阅设置和规划备份和灾难恢复部署。如需查看服务提供方和服务使用方的定义,请参阅 Google Cloud 术语表。
准备工作
如需安装 Google Cloud 备份和灾难恢复服务,您需要在开始部署之前完成以下配置步骤:
- 启用专用服务访问通道连接。您必须先建立此连接,然后才能开始安装。即使您已配置专用服务访问通道子网,它也必须至少具有
/23
子网。例如,如果您已为专用服务访问通道连接配置一个/24
子网,我们建议您添加一个/23
子网。更棒的是,您可以添加一个/20
子网,以确保稍后可以添加更多服务。 - 配置 Cloud DNS,使其可在部署备份/恢复设备的 VPC 网络中访问。这可确保正确解析 googleapis.com(通过私有查找或公开查找)。
- 配置网络默认路由和防火墙规则,以允许流向 TCP 端口 443 上的
*.googleapis.com
(通过公共 IP)或private.googleapis.com
(199.36.153.8/30) 的出站流量,或者允许0.0.0.0/0
的显式出站流量。同样,您需要在安装备份/恢复设备的 VPC 网络中配置路由和防火墙。我们还建议将 Google 专用访问通道用作首选选项 - 如需了解详情,请参阅配置专用 Google 访问通道。 - 在使用方项目中启用以下 API:
- 如果您已启用任何组织政策,请确保进行以下配置:
constraints/cloudkms.allowedProtectionLevels
包括SOFTWARE
或ALL
。
- 配置以下防火墙规则:
- 从 Compute Engine VPC 中的备份/恢复设备到端口 TCP-5106 上的 Linux 主机(代理)的入站流量。
- 如果您将基于块的备份磁盘与 iSCSI 搭配使用,则出站流量会从裸金属解决方案中的 Linux 主机(代理)流向 Compute Engine VPC 中的备份/恢复设备(端口为 TCP-3260)。
- 如果您使用基于 NFS 或 dNFS 的备份磁盘,则从裸金属解决方案中的 Linux 主机(代理)到以下端口上 Compute Engine VPC 中的备份/恢复设备的出站流量:
- TCP/UDP-111 (rpcbind)
- TCP/UDP-756 (status)
- TCP/UDP-2049 (nfs)
- TCP/UDP-4001 (mountd)
- TCP/UDP-4045 (nlockmgr)
- 配置 Google Cloud DNS 以解析裸金属解决方案主机名和网域,以确保名称解析在裸金属解决方案服务器、虚拟机和基于 Compute Engine 的资源(例如备份和灾难恢复服务)之间保持一致。
安装备份和灾难恢复管理控制台
- 启用 Backup and DR Service API(如果尚未启用)。
在 Google Cloud 控制台中,使用导航菜单转到操作部分,然后选择备份和灾难恢复:
选择您之前创建的现有专用服务访问通道连接。
选择备份和灾难恢复管理控制台的位置。您在该区域在服务提供方项目中部署备份和灾难恢复管理控制台界面。Google Cloud 拥有并维护管理控制台资源。
在服务使用方项目中选择要连接到备份和灾难恢复服务的 VPC 网络。这通常是共享 VPC 或宿主项目。
等待最多一小时后,您应该会在部署完成后看到以下屏幕。
安装备份/恢复设备
在“备份和灾难恢复”页面上,点击登录管理控制台:
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/
在备份和灾难恢复管理控制台的主页面中,转到设备页面:
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
输入备份/恢复设备的名称。请注意,部署开始后,Google Cloud 会自动在名称末尾添加其他随机数字。
选择要在其中安装备份/恢复设备的使用方项目。
选择您的首选区域、可用区和子网。
选择存储空间类型。我们建议为 PoC 选择标准永久性磁盘,为生产环境选择 SSD 永久性磁盘。
点击开始安装按钮。预计此过程将花费一个小时来部署备份和灾难恢复管理控制台以及第一个备份/恢复设备。
初始安装过程完成后,您可以在其他区域或地区添加其他备份/恢复设备。
配置 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(可选)
配置存储池
存储池将数据存储在物理存储位置。对于最近的数据(1-14 天),应使用 Persistent Disk,对于长期数据(例如天、周、月和年),则应使用 Cloud Storage。
Cloud Storage
在您需要存储备份数据的位置创建一个单区域或多区域标准存储桶。
按照以下说明创建 Cloud Storage 存储桶:
- 在 Cloud Storage 存储桶页面中,为该存储桶命名。
- 选择存储位置。
- 选择存储类别:标准、Nearline 或 Coldline。
- 如果您选择 Nearline 或 Coldline 存储,请将访问权限控制模式设置为精细控制。对于 Standard Storage,请接受默认访问权限控制模式 Uniform。
最后,不要配置任何其他数据保护选项,然后点击创建。
接下来,将此存储桶添加到备份/恢复设备。前往备份和灾难恢复管理控制台。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/
选择管理 > 存储池菜单项。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#pools
点击最右侧的选项 +添加 OnVault 池。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#addonvaultpool
- 输入池名称。
- 在池类型字段中,选择 Google Cloud Storage。
- 选择要挂接到 Cloud Storage 存储桶的设备。
- 输入 Cloud Storage 存储桶名称。
点击保存。
Persistent Disk 快照池
如果您已使用标准或 SSD 选项部署备份/恢复设备,则 Persistent Disk 快照池默认为 4TB。如果您的源数据库或文件系统需要更大的池,您可以修改已部署的备份/恢复设备的设置,添加新的 Persistent Disk,然后创建新的自定义池或配置其他默认池。
打开管理 > 设备页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
修改备份服务器实例,然后点击 +添加新磁盘。
- 为磁盘命名。
- 选择空白磁盘类型。
- 您可以根据需要选择标准、平衡或 SSD。
- 输入所需的磁盘大小。
点击保存。
转到备份和灾难恢复管理控制台中的管理 > 设备页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
右键点击设备名称,然后从菜单中选择配置设备。
您可以将磁盘添加到现有快照池(扩展),也可以创建新池(不过,请勿在同一个池中混用 Persistent Disk 类型)。如果要展开,请点击要展开的池右上角的图标。
在此示例中,您将使用点击添加池选项创建一个新池。点击此按钮后,请等待 20 秒以打开下一页。
在此步骤中,配置新池。
- 为池命名,然后点击绿色 + 图标以将磁盘添加到池中。
- 点击提交。
- 在系统提示时,以大写形式输入 PROCEED,确认您要继续。
点击确认。
您现在使用永久性磁盘扩展或创建了池。
配置备份方案
通过备份计划,您可以配置用于备份任何数据库、虚拟机或文件系统的两个关键元素。备份方案包含配置文件和模板。
- 借助配置文件,您可以定义何时备份某项内容,以及应将备份数据保留多长时间。
- 模板提供了一个配置项,可让您决定哪些备份/恢复设备和存储池(Persistent Disk、Cloud Storage 等)应该用于备份任务。
创建开发者资料
在备份和灾难恢复管理控制台中,转到备份方案 > 配置文件页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#manageprofiles
其中已经创建了两个配置文件。您可以将一个配置文件用于 Compute Engine 虚拟机快照,也可以修改另一个配置文件并将其用于裸金属解决方案备份。您可以拥有多个配置文件,如果您要备份多个需要不同磁盘层级进行备份的数据库,这会非常有用。例如,您可以为 SSD(性能更高)创建一个池,为标准永久性磁盘(标准性能)创建一个池。您可以为每个配置文件选择不同的快照池。
右键点击名为 LocalProfile 的默认配置文件,然后选择修改。
进行以下更改:
- 使用更有意义的配置文件名称和说明更新配置文件设置。您可以指定要使用的磁盘层级、Cloud Storage 存储桶所在的位置,或提供其他可以说明此配置文件用途的信息。
- 将快照池更改为您之前创建的扩展池或新池。
- 为此配置文件选择一个 OnVault 池(Cloud Storage 存储桶)。
点击保存配置文件。
创建模板
在备份和灾难恢复管理控制台中,转到备份方案 > 模板菜单。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#managetemplates
点击 +创建模板。
- 为模板命名。
- 在允许替换政策设置中选择是。
- 添加此模板的说明。
点击保存模板。
在模板中,配置以下内容:
- 在右侧的政策部分中,点击 +添加。
- 提供政策名称。
- 选中您希望政策运行日期对应的复选框,或保留默认值每天。
- 修改要在该时间段内运行作业的时间窗口。
- 选择保留时间。
点击高级政策设置。
如果要按常规频率(例如每 15 分钟)执行归档日志备份,并将归档日志复制到 Cloud Storage,您需要启用以下政策设置:
- 如果需要,请将备份后截断/完全清除日志设置为截断。
- 如果需要,将启用数据库日志备份设置为是。
- 将 RPO(分钟)设置为您需要的归档日志备份间隔时间。
- 将日志备份保留期限(以天为单位)设置为所需的保留期限。
- 将复制日志(使用 Streamsnap 技术)设置为否。
- 如果要将日志发送到 Cloud Storage 存储桶,请将将日志发送到 OnVault 池设置为是。否则,请选择否。
点击保存更改。
点击更新政策以保存更改。
对于右侧的 OnVault,请执行以下操作:
- 点击 +Add(+添加)。
- 添加政策名称。
- 设置保留期限,单位可以为天、周、月或年。
点击更新政策。
(可选)如需添加更多保留选项,请针对每周、每月和每年的保留创建其他政策。如需添加其他保留政策,请按以下步骤操作:
- 对于右侧的 OnVault,点击 +添加。
- 添加政策名称。
- 将在这些天的值更改为您希望触发此作业的日期。
- 设置保留期限,单位可以为天、周、月或年。
点击更新政策。
点击保存模板。在以下示例中,您将看到一条快照政策,该政策将备份在 Persistent Disk 层级保留 3 天、在 OnVault 作业中保留 7 天以及总共保留 4 周。每周备份在星期六晚上运行。
备份 Oracle 数据库
Google Cloud 备份和灾难恢复架构可为 Google Cloud 提供应用一致的、永久性增量 Oracle 备份,并为数 TB 的 Oracle 数据库提供即时恢复和克隆。
Google Cloud 备份和灾难恢复使用以下 Oracle API:
- RMAN image copy API -数据文件的图片副本恢复速度快得多,因为数据文件的物理结构已存在。恢复管理器 (RMAN) 指令 BACKUP AS COPY 为整个数据库的所有数据文件创建映像副本并保留数据文件格式。
- ASM 和 CRS API - 使用自动存储管理 (ASM) 和 Cluster Ready Services (CRS) API 管理 ASM 备份磁盘组。
- RMAN Archive log Backup API - 此 API 可生成归档日志,将其备份到暂存磁盘,并从生产归档位置将其完全清除。
配置 Oracle 主机
设置 Oracle 主机的步骤包括安装代理、将主机添加到备份和灾难恢复、配置主机以及发现 Oracle 数据库。一切就绪后,您可以将 Oracle 数据库备份到备份和灾难恢复。
安装备份代理
安装备份和灾难恢复代理相对简单直接。您只需在首次使用主机时安装代理,后续就可以在 Google Cloud 控制台的备份和灾难恢复界面中完成升级。您需要以 root 用户身份登录或以 sudo 身份验证的会话登录,才能执行代理安装。您无需重新启动主机即可完成安装。
通过界面或管理 > 设备页面下载备份代理。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#clusters
右键点击备份/恢复设备的名称,然后选择配置设备。此时会打开新的浏览器窗口。
点击 Linux 64 位图标,将备份代理下载到托管浏览器会话的计算机。使用 scp(安全副本)将下载的代理文件移动到 Oracle 主机进行安装。
或者,您也可以将备份代理存储在 Cloud Storage 存储桶中,启用下载,并使用
wget
或curl
命令将代理直接下载到 Linux 主机。curl -o agent-Linux-latestversion.rpm https://storage.googleapis.com/backup-agent-images/connector-Linux-11.0.2.9595.rpm
使用
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
如果您使用
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
将主机添加到备份和灾难恢复
在备份和灾难恢复管理控制台中,打开管理 > 主机。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#hosts
- 点击 +添加主机。
- 添加主机名。
- 为主机添加 IP 地址,然后点击 + 按钮以确认配置。
- 点击要添加主机的设备。
- 粘贴密钥。您必须在安装备份代理和生成密钥后两小时内执行此任务。
点击添加以保存主机。
如果您收到错误或部分成功消息,请尝试以下解决方法:
备份代理加密密钥可能已超时。如果您未在创建密钥后的两小时内将密钥添加到主机。您可以使用命令行语法在 Linux 主机上生成新的密钥:
/opt/act/bin/udsagent secret --reset --restart
允许备份/恢复设备与主机上安装的代理之间通信的防火墙可能未正确配置。按照步骤打开备份代理防火墙和 Oracle 服务的端口。
Linux 主机的网络时间协议 (ntp) 配置可能未正确配置。查看并确认 NTP 设置正确无误。
解决根本问题后,您应该会看到证书状态从不适用更改为有效。
配置主机
在备份和灾难恢复管理控制台中,打开管理 > 主机。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#hosts
右键点击要备份 Oracle 数据库的 Linux 主机,然后选择修改。
点击暂存磁盘格式,然后选择 NFS。
向下滚动到已发现的应用部分,然后点击发现应用以启动设备到代理的发现过程。
点击发现以开始此过程。发现过程最多需要 5 分钟。完成后,已发现的文件系统和 Oracle 数据库将显示在应用窗口中。
点击保存以更新对主机的更改。
准备 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 数据库的备份和灾难恢复。
在开始备份作业之前,您需要进行一些配置。其中一些任务是可选的,但我们建议您采用以下设置以获得最佳效果:
- 使用 SSH 连接到 Linux 主机,并以拥有 su 权限的 Oracle 用户身份登录。
将 Oracle 环境设置为您的特定实例:
. oraenv ORACLE_SID = [ORCL] ? The Oracle base remains unchanged with value /u01/app/oracle
使用
sysdba
账号连接到 SQL*Plus:sqlplus / as sysdba
使用以下命令启用 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.
为 Linux 主机配置 Direct NFS:
cd $ORACLE_HOME/rdbms/lib make -f [ins_rdbms.mk](http://ins_rdbms.mk/) dnfs_on
配置块更改跟踪。首先检查是启用还是停用。以下示例显示块更改跟踪已停用:
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 数据库
在备份和灾难恢复管理控制台中,转到应用管理器 > 应用页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
右键点击要保护的 Oracle 数据库名称,然后从菜单中选择管理备份方案。
选择要使用的模板和配置文件,然后点击 Apply Backup Plan。
出现提示时,设置配置所需的任何特定于 Oracle 和 RMAN 的高级设置。完成后,点击 Apply Backup Plan。
例如,通道数量默认为 2。因此,如果您的 CPU 核心数较多,您可以增加并行备份操作的通道数,并将其设置为更大的数值。
如需详细了解高级设置,请参阅配置 Oracle 数据库的应用详细信息和设置。
除了这些设置之外,您还可以更改暂存磁盘用于将磁盘从 Backup Appliance 映射到主机的协议。转到 Manage(管理)> 主机页面,然后选择要修改的主机。选中 Staging Disk Format to Guest 选项。默认选择块格式,这样会通过 iSCSI 映射暂存磁盘,也可以将其更改为 NFS,然后暂存磁盘将改用 NFS 协议。
默认设置取决于您的数据库格式。如果使用 ASM,系统会使用 iSCSI 向备份发送 ASM 磁盘组。如果您使用文件系统,系统会使用 iSCSI 将备份发送到文件系统。如果您想要使用 NFS 或直接 NFS (dNFS),则必须将暂存磁盘的主机设置更改为 NFS
。如果您使用默认设置,则所有备份暂存磁盘都使用块存储格式和 iSCSI。
启动备份作业
在备份和灾难恢复管理控制台中,转到应用管理器 > 应用页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
右键点击要保护的 Oracle 数据库,然后从菜单中选择管理备份方案。
点击右侧的快照菜单,然后点击立即运行。这将启动按需备份作业。
如需监控备份作业的状态,请转到监控 > 作业菜单并查看作业状态。作业可能需要 5 到 10 秒才会显示在作业列表中。以下是一个正在运行的作业的示例:
作业成功后,您可以使用元数据查看特定作业的详细信息。
- 应用过滤条件并添加搜索字词,以查找您感兴趣的作业。以下示例使用了成功和过去一天过滤器,并搜索了 test1 主机。
如需详细了解特定作业,请点击作业列中的作业。此时会打开一个新窗口。如下例所示,每个备份作业都会捕获大量信息。
装载和恢复 Oracle 数据库
Google Cloud 备份和灾难恢复提供了许多不同的功能,可用于访问 Oracle 数据库的副本。其中的两种主要方法为:
- 应用感知装载
- 恢复(装载并迁移,以及传统恢复)
每种方法都有不同的优势,因此您需要根据用例、性能要求以及数据库副本的保留时长来选择要使用的方法。以下部分包含针对每项功能的一些建议。
应用感知装载
您可以使用装载来快速访问 Oracle 数据库的虚拟副本。 当性能不重要时,您可以配置装载,并且数据库复制的存留时间仅为几小时到几天。
装载的主要好处是不会消耗大量的额外存储空间。相反,装载会使用备份磁盘池中的快照,该池可以是 Persistent Disk 上的快照池,也可以是 Cloud Storage 中的 OnVault 池。使用虚拟副本快照功能可最大限度地缩短访问数据的时间,因为不需要先复制数据。备份磁盘会处理所有读取操作,快照池中的磁盘会存储所有写入操作。因此,可以快速访问装载虚拟副本,并且不会覆盖备份磁盘副本。装载非常适合用于开发、测试和 DBA 活动,在这些活动中,您需要先验证架构更改或更新,然后才能将其发布到生产环境。
装载 Oracle 数据库
在备份和灾难恢复管理控制台中,转到备份和恢复 > 恢复页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#recover/selectapp
在应用列表中,找到要装载的数据库,右键点击数据库名称,然后点击下一步:
此时,系统会显示时间轴斜坡视图,并显示所有可用的时间点图像。如果长期留存率图片未显示在梯度视图中,您也可以往回滚动查看这些图片。默认情况下,系统会选择最新的映像。
如果您希望查看时间点图片的表格视图,请点击表格选项以更改视图:
找到所需映像,然后选择装载:
为装载的数据库选择应用选项。
- 从下拉菜单中选择目标主机。如果您之前已添加主机,它们会显示在此列表中。
- (可选)输入标签。
- 在目标数据库 SID 字段中,输入目标数据库的标识符。
- 将用户名设置为 oracle。此名称将成为身份验证的操作系统用户名。
- 输入 Oracle 主目录。本示例使用的是
/u01/app/oracle/product/19c/dbhome_1
。 - 如果您将数据库日志配置为备份,则前滚时间将变为可用。点击时钟/时间选择器并选择前滚点。
- 使用恢复功能恢复默认处于启用状态。此选项会为您装载并打开数据库。
输入完信息后,点击 Submit 以开始装载过程。
监控作业进度和成功
您可以打开监控 > 作业页面,监控正在运行的作业。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
该页面显示状态和作业类型。
装载作业完成后,您可以通过点击作业编号来查看作业详细信息:
如需查看您创建的 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:
Go to App Manager > Active Mounts page.
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#activemounts
此页面包含当前正在使用的所有已装载应用(文件系统和数据库)的全局视图。
右键点击要清理的装载,然后从菜单中选择卸载并删除。此操作不会删除备份数据。而只是从目标主机和快照缓存磁盘(其中包含数据库的存储写入操作)中移除已装载的虚拟数据库。
打开应用管理器 > 应用页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
- 右键点击源应用(数据库)并选择访问。
- 在左侧坡道上,您会看到一个内含数字的灰色圆圈,其中数字表示从此时间点开始的有效装载数量。点击该图片,系统会显示一个新菜单。
- 点击操作。
- 点击卸载并删除。
- 在下一个屏幕上点击提交并确认此操作。
几分钟后,系统会从目标主机中移除数据库,并清理并移除所有磁盘。此操作会释放快照池中用于写入重做磁盘以进行主动装载的磁盘空间。
您可以像监控任何其他作业一样监控卸载作业。转到监控 > 作业菜单以监控作业的卸载进度,并确认作业已完成。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
如果您在运行卸载并删除作业之前不小心手动删除了 Oracle 数据库,或关闭了数据库,请再次执行卸载并删除作业,并在确认屏幕上选择强制卸载选项。此操作会从目标主机中强制移除重做暂存磁盘,并从快照池中删除该磁盘。
恢复
在出现问题或损坏时,您可以使用恢复功能来恢复生产数据库,并且需要将数据库的所有文件从备份副本复制到本地主机。您通常在灾难类型的事件发生后执行恢复,或者为非生产测试副本执行恢复。在这种情况下,您的客户通常需要等待您先将先前的文件复制回源主机,然后才能重启数据库。但是,Google Cloud 备份和灾难恢复还支持恢复功能(复制文件和启动数据库)以及装载和迁移功能(您可以装载数据库(访问时间很快),并且可以在数据库装载并访问时将数据文件复制到本地机器。装载和迁移功能对于恢复时间目标 (RTO) 较短的场景非常有用。
装载并迁移
基于装载并迁移的恢复分为两个阶段:
恢复装载 - 第 1 阶段
在此阶段,您可以通过备份/恢复设备提供的选定映像即时访问数据库。
- 所选备用图片的副本会映射到目标数据库服务器,并根据源数据库备用图片格式呈现到 ASM 或文件系统层。
- 使用 RMAN API 执行以下任务:
- 将控制文件和重做日志文件恢复到指定的本地控制文件,并重做文件位置(ASM 磁盘组或文件系统)。
- 将数据库切换到备份/恢复设备提供的映像副本。
- 将所有可用的归档日志前滚到指定的恢复点。
- 以读写模式打开数据库。
- 数据库从备份/恢复设备提供的备用图片的映射副本运行。
- 数据库的控制文件和重做日志文件会放置在目标上选定的本地生产存储位置(ASM 磁盘组或文件系统)。
- 恢复装载操作成功后,数据库便可用于生产操作。当数据库和应用处于运行状态时,您可以使用 Oracle 在线 datafile 移动 API 将数据移回生产存储位置(ASM 磁盘组或文件系统)。
恢复迁移 - 第 2 阶段
将数据库数据文件在线移动到生产存储空间:
- 数据迁移在后台运行。使用 Oracle 在线 datafile 移动 API 迁移数据。
- 您将数据文件从备份和灾难恢复提供的备份映像副本移动到所选的目标数据库存储空间(ASM 磁盘组或文件系统)。
- 迁移作业完成后,系统会从目标移除和取消映射备份和灾难恢复提供的备用图片副本(ASM 磁盘组或文件系统),并且数据库会从生产存储空间运行。
如需详细了解装载和迁移恢复,请参阅:装载并迁移 Oracle 备用图片以即时恢复至任何目标。
恢复 Oracle 数据库
在备份和灾难恢复管理控制台中,转到备份和恢复 > 恢复页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#recover/selectapp
在应用列表中,右键点击要恢复的数据库的名称,然后选择下一步:
此时会显示“时间轴斜坡”视图,其中会显示所有可用的时间点图像。如果您需要查看坡道中未显示的长期留存率图片,也可以往回滚动。默认情况下,系统始终选择最新的映像。
如需恢复映像,请点击装载菜单,然后选择恢复:
选择恢复选项。
- 选择前滚时间。点击时钟并选择所需的时间点。
- 输入要用于 Oracle 的用户名。
- 如果您的系统使用数据库身份验证,请输入密码。
如需启动作业,请点击提交。
输入数据丢失以确认您要覆盖源数据库,然后点击确认。
监控作业进度和成功
如需监控作业,请打开监控 > 作业页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#jobs
作业完成后,点击作业编号以查看作业详细信息和元数据。
保护恢复的数据库
数据库恢复作业完成后,系统不会在恢复数据库后自动备份数据库。换句话说,当您恢复先前具有备份方案的数据库时,默认情况下备份方案不会激活。
如需验证备份计划并未运行,请依次前往应用管理器 > 应用页面。
https://bmc-PROJECT_NUMBER-GENERATED_ID-dot-REGION.backupdr.googleusercontent.com/#applications
在列表中找到恢复的数据库。保护图标从绿色变为黄色,表示系统未安排运行数据库备份作业。
要保护已恢复的数据库,请在 Application 列中查找要保护的数据库。右键点击数据库名称,然后选择管理备份方案。
为恢复的数据库重新启用计划的备份作业。
- 点击应用菜单,然后选择启用。
确认所有 Oracle 高级设置,然后点击启用备份方案。
问题排查和优化
本部分提供了一些有用的提示,以帮助您排查 Oracle 备份问题、优化系统以及考虑针对 RAC 和 Data Guard 环境进行调整。
排查 Oracle 备份问题
Oracle 配置包含许多依赖项,以确保备份任务成功。以下步骤提供了有关配置 Oracle 实例、监听器和数据库的几条建议,以确保成功。
要验证要保护的服务和实例的 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
验证您已将 Oracle 数据库配置为 ARCHIVELOG 模式。如果数据库以不同模式运行,您可能会看到失败的作业,并显示错误代码 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
在 Oracle 数据库上启用块更改跟踪。虽然这并不是使此解决方案正常运行的强制要求,但启用块更改跟踪可以防止需要执行大量后处理工作来计算已更改的块,并且有助于缩短备份作业时间:
SQL> select status,filename from v$block_change_tracking; STATUS FILENAME ---------- ------------------------------------------------------------------ ENABLED +DATADG/ORCL/CHANGETRACKING/ctf.276.1124639617
验证数据库使用
spfile
:sqlplus / as sysdba SQL> show parameter spfile NAME TYPE VALUE ------------------ ----------- ------------ spfile string +DATA/ctdb/spfilectdb.ora
为 Oracle 数据库主机启用 Direct NFS (dnfs)。虽然并非强制性要求,但如果您需要使用最快的方法备份和恢复 Oracle 数据库,最好使用 dnfs。如需进一步提高吞吐量,您可以针对每个主机更改暂存磁盘,并为 Oracle 启用 dnfs。
配置 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)
SERVICE_NAME
字段对于 RAC 配置非常重要。服务名称表示用于将系统通告给与集群通信的外部资源使用的别名。在受保护的数据库的详细信息和设置选项中,使用 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 数据库的应用详情和设置中所述的应用详细信息和设置页面中,在 Oracle 服务名称字段中输入您创建的服务名称 (CLU1_S):
错误代码 870 表明“不支持在 NFS 暂存磁盘上使用 ASM 进行 ASM 备份”。如果您收到此错误,则表示您没有在详细信息和设置中为要保护的实例配置正确的设置。在此错误配置中,主机使用 NFS 作为暂存磁盘,但源数据库在 ASM 上运行。
如需解决此问题,请将 Convert ASM Format to Filesystem Format 字段设置为 Yes。更改此设置后,重新运行备份作业。
错误代码 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
备份中的日志消息可帮助您诊断问题。您可以在运行备份作业的源主机上访问日志。对于 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 注意事项
如果暂存磁盘设置为 NFS 模式,则备份和灾难恢复解决方案不支持从 RAC 数据库中的多个节点进行并发备份。如果您的系统需要从多个 RAC 节点进行并发备份,请使用块 (iSCSI) 作为暂存磁盘模式,并针对每个主机进行设置。
对于使用 ASM 的 Oracle RAC 数据库,您必须将快照控制文件放在共享磁盘中。如需验证此配置,请连接到 RMAN 并运行 show all
命令:
rman target / RMAN> show all如果快照控制文件的位置不正确,请重新配置快照控制文件。例如,对于“db_unique_name”为 **ctdb**(使用本地文件系统)的数据库,使用以下 RMAN 配置参数:
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 实例的网速。共享 vCPU 的速度范围为 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% 的网络用于附加的 Persistent Disk 的 I/O 操作,而将 40% 的预留空间用于其他用途。如需了解详情,请参阅影响性能的其他因素。
建议:选择 e2-standard-16 机器类型和至少 4096 GB 的 PD-SSD 可为备份/恢复设备提供最佳性能。第二个选项是,您可以为备份/恢复设备选择 n2-standard-16 机器类型。使用此选项可获得 10-20% 范围内的额外性能优势,但会产生额外的费用。如果这与您的使用场景相匹配,请与 Cloud Customer Care 团队联系,进行此项更改。
优化快照
如需提高单个备份/恢复设备的工作效率,您可以从多个来源同时运行快照作业。每项作业的速度都会降低。但是,如果有足够多的作业,您可以为快照池中的 Persistent Disk 卷实现持续写入上限。
当您将 iSCSI 用作暂存磁盘时,能够以大约 300-330MB/s 的持续写入速度将单个大型实例备份到备份/恢复设备。在我们的测试中,我们看到,假设您以最佳大小同时配置源主机和备份/恢复设备,并且它们位于同一区域和可用区中,从 2TB 到 80TB 的所有内容在快照中都是如此。
选择正确的暂存磁盘
如果您需要出色的性能和吞吐量,相对于 iSCSI 而言,直接 NFS 可以带来显著的优势,作为用于 Oracle 数据库备份的暂存磁盘。直接 NFS 整合了 TCP 连接的数量,从而提高了可伸缩性和网络性能。
当您为 Oracle 数据库启用直接 NFS 时,配置足够的源 CPU(例如,8 个 vCPU 和 8 个 RMAN 通道),并在裸金属解决方案区域扩展与 Google Cloud 之间建立 10GB 的链路,这样您就可以备份单个 Oracle 数据库,从而将吞吐量提高到 700-900 MB/秒以上。RMAN 恢复速度还受益于直接 NFS,吞吐量级别达到 850 MB/秒及更多。
平衡费用和吞吐量
此外,请务必注意,所有备份数据都以压缩格式存储在备份/恢复设备快照池中,这样做是为了降低费用。这种压缩优势产生的性能开销微乎其微。 但是,对于加密数据 (TDE) 或经过高度压缩的数据集,虽然对吞吐量数字的影响,但可能会获得一些可衡量的影响。
了解影响网络和备份服务器性能的因素
以下各项会影响 Oracle on 裸金属解决方案与 Google Cloud 中的备份服务器之间的网络 I/O:
闪存
与 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),并且提供 10 GB 双方案和完整性能。此外,还可以配置专门用于备份和恢复操作的专用互连链接。如果客户希望将备份流量与可能经由同一链路的数据库或应用流量隔离,或者希望在备份和恢复操作至关重要时保证全带宽,以确保实现恢复点目标 (RPO) 和恢复时间目标 (RTO),建议使用此选项。
后续步骤
以下是一些有关 Google Cloud 备份和灾难恢复的其他链接和信息,可能会对您有所帮助。
- 如需了解设置 Google Cloud 备份和灾难恢复的其他步骤,请参阅备份和灾难恢复产品文档。
- 如需查看产品安装和功能演示,请参阅 Google Cloud 备份和灾难恢复视频播放列表。
- 如需查看 Google Cloud 备份和灾难恢复的兼容性信息,请参阅支持矩阵:备份和灾难恢复。请务必验证您运行的 Linux 和 Oracle 数据库实例是否受支持。
- 如需了解关于 Oracle 数据库保护的其他步骤,请参阅适用于 Oracle 数据库的备份和灾难恢复以及保护发现的 Oracle 数据库。
- NFS、CIFS、ext3 和 ext4 等文件系统也可以使用 Google Cloud 备份和灾难恢复进行保护。如需查看可用的选项,请参阅应用备份方案以保护文件系统。
- 如需为 Google Cloud 备份和灾难恢复启用提醒,请参阅配置基于日志的提醒并观看 Google Cloud 备份和灾难恢复提醒通知设置视频。
- 如需创建支持请求,请与 Cloud Customer Care 联系。