了解有关同步测试和生产数据库的信息
在云中部署了开发和测试环境时,您需要快速高效地刷新或同步测试数据,而不会产生大量存储成本。
体系结构

插图 prod-testmaster-snap-db.png 的说明
以下组件是体系结构的一部分:
- 生产数据库:包含生产数据的数据库,这些数据是将用于创建测试主项目的源
- 测试主数据库:用于创建快照的生产数据库的副本
- 快照:从测试主项目创建的瘦克隆,可用于开发或测试环境
第一步是创建生产数据库的测试主数据库。可以采用以下三种方法之一:
- 从生产数据库创建物理备用数据库。物理备用数据库充当测试主项目。
如果您经常需要创建生产数据库的克隆(如每日或每周),或者如果生产数据库很大,则使用此选项。当测试主数据库为物理备用数据库时,测试主数据库始终与生产环境同步,您永远不需要刷新数据。对于非常大的数据库,无法快速刷新测试主数据库。
- 使用Oracle Recovery Manager (RMAN) 活动副本创建生产数据库的克隆,然后使用克隆作为测试主项目。
如果您有时创建生产环境的克隆,例如半月或每月。使用此方法可以创建测试主项目,一次可以使用 RMAN 活动复制创建测试主项目,然后使用测试主项目在一个月中多次创建克隆。
- 创建生产数据库的完全备份副本,然后使用备份创建克隆并将该克隆用作测试主项目。
如果您并不频繁地刷新克隆(例如每季度、每半年或每年),请使用此选项。使用此方法创建测试主项目时,将从生产数据库创建数据库的完全备份,并使用该生产备份创建测试主项目。可以根据需要多次使用测试主项目创建克隆。
可以使用测试主项目为测试和开发环境创建数据库的空间有效副本(快照)。
以下体系结构图表提供了有关创建和管理测试主项目的不同方法的一些指导。选择最适合您的环境以及需要刷新数据库的频率的选项。
选项 I:如果生产数据库非常大,并且您需要快速从生产环境刷新开发和测试环境(几分钟内),则使用Oracle Data Guard 创建备用数据库作为测试主数据库。此方法的优点是,测试主项目始终与生产数据库同步,而您从不需要刷新测试主项目。

插图 testmaster-dataprotect d.png 的说明
此体系结构支持以下流:
- 使用 Oracle Data Guard 创建测试主项目数据库。在这种情况下,测试主项目是生产数据库的物理备用数据库,始终与生产进行同步。
- 为测试环境创建读/写快照。快照是在测试主服务器上创建的。测试主服务器使用Oracle ASM 集群文件系统(Oracle ACFS)。
此体系结构支持以下组件:
- 正式版 Oracle Database:生产数据库可以使用Oracle Automatic Storage Management (Oracle ASM)、Oracle ACFS 或 UNIX 文件系统。
- 测试主项目数据库:Oracle ACFS 上生产数据库的完全同步物理备用数据库。
- 快照:为测试环境创建的测试主项目的一个或多个读/写副本。
选项 II:如果您需要定期刷新测试环境(如双周或每月),然后使用 RMAN 活动复制克隆生产数据库以创建测试主项。

插图 testmaster-rman-duplicate.png 的说明
此体系结构支持以下流:
- 克隆生产数据库以创建测试主数据库 RMAN 活动复制。从生产数据库运行 RMAN 活动的复制命令以创建测试主数据库。
- 为测试环境创建读/写快照。快照是在与测试主服务器相同的服务器上创建的(测试主服务器)。测试主项目服务器使用Oracle ACFS。
- 通过删除测试主项目并重新创建生产数据库的克隆来刷新测试主项目。
此体系结构支持以下组件:
- 正式版 Oracle Database:生产数据库可以使用Oracle ASM、Oracle ACFS 或 UNIX 文件系统。
- 测试主项目数据库:Oracle ACFS 文件系统中生产数据库的完全克隆。
- 快照:为测试环境创建的测试主项目的一个或多个读/写快照。
选项 III:如果您需要偶尔从生产进行刷新(每几个月),则可以使用生产环境中的 RMAN 完全备份来创建测试主数据库。要简化刷新过程,请创建Oracle Cloud Infrastructure File Storage 服务,并将其装载到生产中,然后测试主数据库服务器。在Oracle Cloud Infrastructure File Storage上执行生产数据库的 RMAN 备份时,还可以在测试主体服务器上创建测试主项目。

插图 testmaster-rman-full.png 的说明
此体系结构支持以下流:
- 在Oracle Cloud Infrastructure File Storage 服务上创建生产数据库的完全备份副本,并将备份装载到测试主服务器上。
- 为测试环境创建读/写快照。快照是在测试主服务器上创建的。测试主项目服务器使用Oracle ACFS。
- 根据需要,通过删除现有的测试主项目并使用生产数据库的新备份重新创建测试主项目来刷新测试主项目。
此体系结构支持以下组件:
- 正式版 Oracle Database:生产数据库可以使用Oracle ASM、Oracle ACFS 或 UNIX 文件系统。
- Oracle RMAN 完全备份: RMAN 实用程序将在Oracle Cloud Infrastructure File Storage 服务上创建生产数据库的完全备份。
- 测试主项目数据库:Oracle ACFS 文件系统中生产数据库的完全克隆。
- 快照:为测试环境创建的测试主项目的一个或多个读/写快照。
关于带有 gDBClone
实用程序的瘦克隆
数据库克隆快照管理 (gDBClone
)实用程序旨在提供一种简单高效的方法,用于创建快照克隆和管理用于测试和开发环境的数据库。
该实用程序使用Oracle ASM 集群文件系统(Oracle ACFS)。Oracle ACFS 时间点快照技术和 gDBClone
实用程序提供了强大、灵活的简单工具,可降低管理测试和开发服务器的时间和复杂性。使用这些工具可以快速有效地同步测试、开发和生产数据库之间基于常规调度或根据需要的数据。
Oracle ACFS 快照是 Oracle ACFS 文件系统的联机、只读或读写。快照复制是高效的空间,它使用Oracle ACFS 写入时重定向(ROW)功能。在修改或删除Oracle ACFS 文件区之前,该文件区的当前值将保留在快照中以维护文件系统的时间点。Oracle ACFS 支持每个文件系统的 1023 快照。
使用 gDBClone
脚本可以执行以下密钥函数:
Clone
:从生产数据库创建克隆数据库。克隆是您的测试主数据库。创建数据库克隆的时间量取决于数据库的大小和网络吞吐量。- 源数据库可能位于任何类型的文件系统上 , 包括Oracle Automatic Storage Management (Oracle ASM)。
- 如果数据库是远程数据库,则
gDBClone
必须通过Oracle Real Application Clusters (Oracle RAC)的监听程序或 SCAN (单客户机访问网络)监听程序连接远程数据库。 - 克隆数据库或“测试主项目”可以是主数据库或备用数据库。
- 使用从活动数据库复制Oracle Recovery Manager (RMAN) 时,
gDBClone
将分配 3 个 RMAN 通道。您可以使用-channels RMAN channels number
命令选项覆盖默认值。
Snap
:创建Oracle Database的稀疏快照(瘦克隆)。快照副本采用空间效率,并使用“重定向写时(ACFS ROW)”功能。Convert
:将指定数据库转换为Oracle Real Application Clusters (Oracle RAC) One Node, Oracle RAC, 或者从非容器数据库转换为指定容器数据库(CDB)的插接式数据库(PDB )ListDBs
:列出克隆的数据库及其快照DelDB
:删除克隆的数据库或其快照ListHomes
:列出可用的 Oracle 主目录- ACFS
SYSPwF
:创建加密的密码文件
关于必需的服务、产品和角色
此解决方案需要以下产品、服务和角色:
源系统(生产数据库)可以是以下任何一项:
- 一节点Oracle Cloud Infrastructure 虚拟机数据库系统
- 2 节点Oracle RAC 虚拟机数据库系统
- 单节点裸金属Oracle Database 系统
- Oracle Database Exadata Cloud Service 数据库系统
生产数据库可以使用 Oracle Automatic Storage Management (Oracle ASM)、Oracle ASM 集群文件系统(Oracle ACFS)或 UNIX 文件系统。
目标系统(测试主体服务器)可以是以下任意项:
- 单节点(单实例)裸金属数据库系统
“测试主数据库”不能是虚拟机数据库系统,因为虚拟机数据库系统不支持多个数据库。
- Oracle Database Exadata Cloud Service
对于测试主项目数据库实例,Oracle Database 必须存储在本地Oracle ACFS 文件系统中。
建议源数据库主目录和目标数据库主目录采用相同的版本。建议将数据库主目录同时处于同一补丁程序级别,包补丁程序和一次性补丁程序。
这些是每个服务所需的角色。
产品名称:角色 | 必需... |
---|---|
Oracle Database:root 系统权限或 sudo,能够以 root 身份运行命令。 | 通过克隆生产数据库、创建备用数据库或创建完全备份副本来创建测试主项目。 |
gDBClone 实用程序:root 系统特权或 sudo ,能够以 root 身份运行命令。
|
运行大多数 gDBClone 任务,包括克隆和快照。
|
Oracle Cloud Infrastructure File Storage 服务:OCI_Administrators 组的成员。
|
在Oracle Cloud Infrastructure File Storage 服务上使用Oracle Recovery Manager (RMAN) 创建完全数据库备份。 |
请参阅了解如何为 Oracle 解决方案获取 Oracle Cloud 服务以获取所需的云服务。