本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
第 1 阶段 — 准备阶段(源数据库保持在线)
在此阶段,将在源系统上备份要传输的表空间的数据文件。Backup 副本被传输到目标系统并通过运行xttdriver.pl脚本进行恢复。
步骤 1:对源系统进行完整(级别=0)表空间备份
要缩短备份持续时间,请将xtt.properties和xttdriver.pl文件复制到多个目录。在每个目录下的每个xtt.properties文件中,在tablespaces参数中输入表空间的名称。然后,在每个目录下,xttdriver.pl使用--backup选项运行。此命令传输除安装目标数据库期间创建的SYSTEMSYSAUX、UNDOTEMP、和之外的所有表空间。
例如,每个xtt01~xtt04目录都有所有xtt脚本(xtt.properties和xttdriver.pl),xtt.properties文件中tablespaces=参数的值各不相同。编辑每个xtt.properties文件中的tablespaces参数时,请考虑划分表空间组,使每个表空间组中数据文件的总大小相似。
在本指南中,该示例假设有四个表空间组。如果源数据库是 Oracle 单实例,则创建所有xtt01~04目录。如果源数据库是 Oracle RAC,则可以在每台 Oracle RAC 服务器中创建每个xtt目录。
[oracle@erp expimp]$ ls out xtt01 xtt02 xtt03 xtt04 [oracle@erp out]$ ls out01 out02 out03 out04
下表显示了xtt.properties文件中tablespaces=参数的示例。
|
|
|
|
|
|
|
|
|
|
|
|
为防止在并行运行时xttdriver.pl删除任何现有的数据文件备份副本,请在中注释掉以下一行xttdriver.pl。
if (@present) { ## Try deleting any existing copied datafiles ##Comment out it for executing rman command in parallel by AWS ## system("\\rm -f $dfcopydir/*.tf"); sleep 5; }
用于xttdriver.pl对源系统进行 RMAN 备份。
如果源系统是 Oracle RAC,则可以在每个 Oracle RAC 实例上同时运行它。
xttdriver.pl 的输出存储在 TMPDIR 环境变量中。使用--backup选项运行每个xttdriver.pl命令,然后使用该--debug选项打开调试模式。
cd /u01/oracle/expimp/xtt<nn> export TMPDIR=/u01/oracle/expimp/out/out<nn> $ORACLE_HOME/perl/bin/perl xttdriver.pl --backup --debug 3
在本示例中,<nn>表示表空间组。如果有四个表空间组,则<nn>变为01、0203、和。04
步骤 2:将完整备份副本传输到目标系统
使用以下两个选项之一将备份副本传输到目标系统。
选项 1 — 使用 AWS Snowball Edge
路径:源数据库-> 源阶段-> Amazon S3 AWS Snowball Edge -> for Lu FSx stre
注意
AWS Snowball Edge 不再向新客户提供。新客户应探索AWS DataSync
下图显示了使用 Snowball Edge 传输完整备份的情况。
Snowball Edge 是一款坚固耐用的物理存储和计算设备,可用于将大规模数据移动到其中。 AWS Snowball Edge 有助于克服大规模数据传输中可能遇到的挑战,包括传输时间长、可用带宽不足和安全问题。
整个数据文件备份副本由 Snowball Edge 传输到 Amazon S3。如果源系统大小超过 100 TB,则必须使用多台 Snowball Edge 设备来缩短传输时间。
Amazon FSx for Lustre 已与亚马逊 S3 深度集成。您可以在几分钟内创建链接到您 FSx 的 S3 存储桶的 for Lustre 文件系统。当链接到 Amazon S3 数据存储库时, FSx for Lustre 文件系统会以文件形式透明地呈现 Amazon S3 对象。在实际环境中,for Lustre 的性能取决于其存储容量、每个文件的大小以及文件在文件系统中的分布情况。 FSx 当 FSx 将 Lustre 用作目标阶段存储时,您无需将表空间备份副本恢复到亚马逊 Elastic Block Store (Amazon EBS) 或亚马逊 S3 中的亚马逊弹性文件系统。
-
将 S3 存储桶导入 Lustre。 FSx
使用 Snowball Edge 将源舞台区域(例如
src_backups)传输并存储到 S3 存储桶(例如)中s3-src-backups。创建 f FSx or Lustre 文件系统(例如
dest_backups)作为数据文件备份副本的目标舞台区域。在目标系统 (Amazon EC2) 上安装开源 Lustre 客户端。有关更多信息,请参阅 Amazon f FSx or Lustre 用户指南。
安装 Lustre 客户端后,将 FSx for Lustre 文件系统挂载到目标系统 (Amazon EC2)。
-
res.txt从源$TMPDIR上传输到$TMPDIR目的地。
选项 2-使用 AWS Direct Connect
路径:源数据库-> 源阶段- AWS Direct Connect > for Lu FSx stre
下图显示了使用传输完整备份的情况 AWS Direct Connect。
Direct Connect 使您能够在数据中心、办公室或托管环境之间创建专用网络连接,以及 AWS。这些私有网络连接可降低网络成本、提高吞吐量并提供一致的体验。
您可以直接将数据文件备份副本从源系统传输到装载 Amazon for Lustre 文件系统的目标系统 (Amazon FSx EC2)。如果您能容纳的高带宽,则此选项比 Snowball Edge 选项快。 Direct Connect
在 Snowball Edge 或传输数据文件备份副本后 Direct Connect,您可以在目标舞台区域的 for FSx Lustre 文件系统中看到它们。
步骤 3:恢复完整备份副本并转换数据文件
恢复完整备份副本并将数据文件转换为目标系统字节序格式。要缩短还原和转换持续时间,请运行带有每个表空间组--restore选项的xttdriver.pl命令。
cd /u01/oracle/expimp/xtt<nn> export TMPDIR=/u01/oracle/expimp/out/out<nn> $ORACLE_HOME/perl/bin/perl xttdriver.pl --restore --debug 3
步骤完成后,数据文件将放置在目标系统上文件中定义的 dest_datafile_location 中xtt.properties。