在云中部署了开发和测试环境时,您需要快速高效地刷新或同步测试数据,而不会产生大量存储成本。
云中的管理环境不必复杂或存储密集型。您可以创建 Oracle Database 的瘦克隆,以便在使用创建数据库完整副本所需的存储容量和时间的一部分时同步数据。
开始同步测试数据库和生产数据库之前,请查看迁移数据库所涉及的概念。
阅读
有关在数据库迁移期间减少停机时间
的信息。
此体系结构显示三个选项,用于创建生产数据库的“测试主项目”版本,然后在开发和测试环境中部署瘦克隆或快照。
插图 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
)实用程序旨在提供一种简单高效的方法,用于创建快照克隆和管理用于测试和开发环境的数据库。
该实用程序使用
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 主目录
SYSPwF
:创建加密的密码文件
生产数据库可以使用 Oracle Automatic Storage Management (Oracle ASM)、Oracle ASM 集群文件系统(Oracle ACFS)或 UNIX 文件系统。
目标系统(测试主体服务器)可以是以下任意项:
单节点(单实例)裸金属数据库系统
“测试主数据库”不能是虚拟机数据库系统,因为虚拟机数据库系统不支持多个数据库。
Oracle Database Exadata Cloud Service
对于测试主项目数据库实例,
Oracle Database
必须存储在本地
Oracle ACFS
文件系统中。
建议源数据库主目录和目标数据库主目录采用相同的版本。建议将数据库主目录同时处于同一补丁程序级别,包补丁程序和一次性补丁程序。
这些是每个服务所需的角色。
本软件和相关文档是根据许可协议提供的,该许可协议中规定了关于使用和公开本软件和相关文档的各种限制,并受知识产权法的保护。除非在许可协议中明确许可或适用法律明确授权,否则不得以任何形式、任何方式使用、拷贝、复制、翻译、广播、修改、授权、传播、分发、展示、执行、发布或显示本软件和相关文档的任何部分。除非法律要求实现互操作,否则严禁对本软件进行逆向工程设计、反汇编或反编译。
此文档所含信息可能随时被修改,恕不另行通知,我们不保证该信息没有错误。如果贵方发现任何问题,请书面通知我们。
如果将本软件或相关文档交付给美国政府,或者交付给以美国政府名义获得许可的任何机构,则适用以下注意事项:
U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.
本软件或硬件是为了在各种信息管理应用领域内的一般使用而开发的。它不应被应用于任何存在危险或潜在危险的应用领域,也不是为此而开发的,其中包括可能会产生人身伤害的应用领域。如果在危险应用领域内使用本软件或硬件,贵方应负责采取所有适当的防范措施,包括备份、冗余和其它确保安全使用本软件或硬件的措施。对于因在危险应用领域内使用本软件或硬件所造成的一切损失或损害,Oracle Corporation 及其附属公司概不负责。
Oracle 和 Java 是 Oracle 和/或其附属公司的注册商标。其他名称可能是各自所有者的商标。
Intel 和 Intel Xeon 是 Intel Corporation 的商标或注册商标。所有 SPARC 商标均是 SPARC International, Inc 的商标或注册商标,并应按照许可证的规定使用。AMD、Opteron、AMD 标识以及 AMD Opteron 标识是 Advanced Micro Devices 的商标或注册商标。UNIX 是 The Open Group 的注册商标。
本软件或硬件以及文档可能提供了访问第三方内容、产品和服务的方式或有关这些内容、产品和服务的信息。除非贵方与 Oracle 签订的相应协议另行规定,否则对于第三方内容、产品和服务,Oracle Corporation 及其附属公司明确表示不承担任何种类的保证,亦不对其承担任何责任。除非贵方和 Oracle 签订的相应协议另行规定,否则对于因访问或使用第三方内容、产品或服务所造成的任何损失、成本或损害,Oracle Corporation 及其附属公司概不负责。
有关 Oracle 对可访问性的承诺,请访问 Oracle Accessibility Program 网站
https://www.oracle.com/pls/topic/lookup?ctx=acc&id=docacc
。
获得 Oracle 支持
购买了支持服务的 Oracle 客户可通过 My Oracle Support 获得电子支持。有关信息,请访问
https://www.oracle.com/pls/topic/lookup?ctx=acc&id=info
;如果您听力受损,请访问
https://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs
。