执行 Oracle 数据库实例的常见 RMAN 任务
在下一节中,您可以了解如何在运行 Oracle 的 Amazon RDS 数据库实例上执行 Oracle Recovery Manager (RMAN) DBA 任务。为了提供托管服务体验,Amazon RDS 未提供数据库实例的 Shell 访问权限。并且它还限制了对需要高级权限的某些系统程序和表的访问。
使用 Amazon RDS 包 rdsadmin.rdsadmin_rman_util
执行 Amazon RDS for Oracle 数据库到磁盘的 RMAN 备份。rdsadmin.rdsadmin_rman_util
包支持完整和增量数据库文件备份、表空间备份和归档重做日志备份。
在 RMAN 备份完成后,您可以从 Amazon RDS for Oracle 数据库实例主机复制备份文件。您可能出于还原到非 RDS 主机目的或出于长期存储备份目的而执行此操作。例如,您可以将备份文件复制到 Amazon S3 存储桶。有关更多信息,请参阅使用 Amazon S3 集成。
RMAN 备份的备份文件保留在 Amazon RDS 数据库实例主机上,直到您手动删除它们。您可以使用 UTL_FILE.FREMOVE
Oracle 过程从目录中删除文件。有关更多信息,请参阅 Oracle 数据库文档中的 FREMOVE 过程
您不能使用 RMAN 还原 RDS for Oracle 数据库实例。但是,您可以使用 RMAN 将备份还原到本地或 Amazon EC2 实例。有关更多信息,请参阅博客文章将 Amazon RDS for Oracle 实例还原到自行管理的实例
注意
要备份和还原到另一个 Amazon RDS for Oracle 数据库实例,您可以继续使用 Amazon RDS 备份和还原特征。有关更多信息,请参阅 备份、还原和导出数据。
主题
RMAN 备份的先决条件
在使用 rdsadmin.rdsadmin_rman_util
包备份数据库之前,请确保满足以下先决条件:
-
确保您的 RDS for Oracle 数据库处于
ARCHIVELOG
模式。要启用此模式,请将备份保留期设置为非零值。 -
在备份归档重做日志或执行包括归档重做日志的完整或增量备份时,以及在备份数据库时,请确保将重做日志保留期设置为非零值。需要归档重做日志才能在恢复期间保持数据库文件的一致性。有关更多信息,请参阅 保留存档重做日志。
-
确保您的数据库实例有足够的可用空间来保存备份。备份数据库时,请将 Oracle 目录对象指定为过程调用中的一个参数。RMAN 将文件放在指定的目录中。您可以使用默认目录(如
DATA_PUMP_DIR
),或创建新目录。有关更多信息,请参阅 在主数据存储空间中创建和删除目录。您可以使用 CloudWatch 指标
FreeStorageSpace
监控 RDS for Oracle 实例中的当前可用空间。尽管 RMAN 仅备份格式化的数据块并支持压缩,但我们建议您的可用空间超过数据库的当前大小。
RMAN 过程的常见参数
您可以使用 Amazon RDS 包 rdsadmin.rdsadmin_rman_util
中的过程来通过 RMAN 执行任务。有几个参数是包中的过程通用的。该包具有以下常见参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
varchar2 |
有效的数据库目录名称。 |
— |
是 |
包含备份文件的目录的名称。 |
|
varchar2 |
|
— |
否 |
包括在备份文件名中的唯一字符串。 注意限制为 30 个字符。 |
|
varchar2 |
|
— |
是 |
包含备份文件的目录的拥有者。 |
|
varchar2 |
|
NULL |
否 |
可用于区分备份的字符串,以便指示备份的目的或用法,例如每日备份、每周备份或增量级备份。 限制为 30 个字符。此标签不区分大小写。无论输入标签时使用的大小写如何,标签始终以大写形式存储。 标签不一定是唯一的,因此多个备份可以使用相同的标签。 如果未指定标签,则 RMAN 会使用 例如,如果备份开始于 2019 年 9 月 27 日 21:45:17,则收到的标签可能为 以下 Amazon RDS for Oracle 数据库引擎版本支持
|
|
布尔值 |
|
|
否 |
指定 指定 |
|
布尔值 |
|
|
否 |
指定 指定 如果您在备份中包括存档重做日志,请使用 |
|
布尔值 |
|
|
否 |
指定 指定 |
|
布尔值 |
|
|
否 |
指定 指定 |
|
number |
对于 Oracle Database 企业版 (EE),为介于
|
|
否 |
通道数。 |
|
布尔值 |
|
|
否 |
为 为 |
|
number |
有效的整数 |
|
否 |
扇区大小,以兆字节 (MB) 为单位。 通过将每个文件拆分为指定扇区大小来并行验证。 为 |
|
varchar2 |
|
|
否 |
检测损坏的程度。 指定 指定 |
在 RDS for Oracle 中验证数据库文件
您可以使用 Amazon RDS 包 rdsadmin.rdsadmin_rman_util
验证 Amazon RDS for Oracle 数据库文件,例如数据文件、表空间、控制文件以及服务器参数文件(SPFILE)。
有关 RMAN 验证的更多信息,请参阅验证数据库文件和备份
验证数据库
要验证 RDS for Oracle 中的 Oracle 数据库使用的所有相关文件,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_database
。
该过程使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_parallel
-
p_section_size_mb
-
p_rman_to_dbms_output
有关更多信息,请参阅 RMAN 过程的常见参数。
以下示例使用参数的默认值来验证数据库。
EXEC rdsadmin.rdsadmin_rman_util.validate_database;
以下示例使用参数的指定值来验证数据库。
BEGIN rdsadmin.rdsadmin_rman_util.validate_database( p_validation_type => '
PHYSICAL+LOGICAL
', p_parallel =>4
, p_section_size_mb =>10
, p_rman_to_dbms_output =>FALSE
); END; /
当 p_rman_to_dbms_output
参数设置为 FALSE
时,RMAN 输出写入到 BDUMP
目录中的文件。
要查看 BDUMP
目录中的文件,请运行以下 SELECT
语句。
SELECT * FROM table(rdsadmin.rds_file_util.listdir('BDUMP')) order by mtime;
要查看 BDUMP
目录中文件的内容,请运行以下 SELECT
语句。
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','rds-rman-validate-
nnn
.txt'));
将文件名替换为您要查看的文件的名称。
验证租户数据库
要验证容器数据库(CDB)中租户数据库的数据文件,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_tenant
。
该过程仅适用于当前租户数据库,并使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_parallel
-
p_section_size_mb
-
p_rman_to_dbms_output
有关更多信息,请参阅 RMAN 过程的常见参数。以下数据库引擎版本支持此过程:
-
Oracle Database 21c(21.0.0)CDB
-
Oracle Database 19c(19.0.0)CDB
以下示例使用参数的默认值来验证当前的租户数据库。
EXEC rdsadmin.rdsadmin_rman_util.validate_tenant;
以下示例使用参数的指定值来验证当前的租户数据库。
BEGIN rdsadmin.rdsadmin_rman_util.validate_tenant( p_validation_type => '
PHYSICAL+LOGICAL
', p_parallel =>4
, p_section_size_mb =>10
, p_rman_to_dbms_output =>FALSE
); END; /
当 p_rman_to_dbms_output
参数设置为 FALSE
时,RMAN 输出写入到 BDUMP
目录中的文件。
要查看 BDUMP
目录中的文件,请运行以下 SELECT
语句。
SELECT * FROM table(rdsadmin.rds_file_util.listdir('BDUMP')) order by mtime;
要查看 BDUMP
目录中文件的内容,请运行以下 SELECT
语句。
SELECT text FROM table(rdsadmin.rds_file_util.read_text_file('BDUMP','rds-rman-validate-
nnn
.txt'));
将文件名替换为您要查看的文件的名称。
验证表空间
要验证与表空间关联的文件,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_tablespace
。
该过程使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_parallel
-
p_section_size_mb
-
p_rman_to_dbms_output
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
varchar2 |
有效的空间表名称 |
— |
是 |
表空间的名称。 |
验证控制文件
要仅验证 Amazon RDS Oracle 数据库实例使用的控制文件,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_current_controlfile
。
该过程使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_rman_to_dbms_output
有关更多信息,请参阅“RMAN 过程的常见参数”。
验证 SPFILE
要仅验证 Amazon RDS Oracle 数据库实例使用的服务器参数文件 (SPFILE),请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_spfile
。
该过程使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_rman_to_dbms_output
有关更多信息,请参阅 RMAN 过程的常见参数。
验证 Oracle 数据文件
要验证数据文件,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.validate_datafile
。
该过程使用 RMAN 任务的以下常见参数:
-
p_validation_type
-
p_parallel
-
p_section_size_mb
-
p_rman_to_dbms_output
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
varchar2 |
有效的数据文件 ID 编号或包含完整路径的有效数据文件名称 |
— |
是 |
数据文件 ID 编号(来自 |
|
number |
有效的整数 |
|
否 |
在数据文件中开始验证的块的编号。当这为 |
|
number |
有效的整数 |
|
否 |
在数据文件中结束验证的块的编号。当这为 |
启用和禁用数据块更改跟踪
数据库更改跟踪记录更改了跟踪文件中的数据块。此技术可以提高 RMAN 增量备份的性能。有关详细信息,请参阅 Oracle 数据库文档中的使用数据块更改跟踪来提高增量备份性能
只读副本不支持 RMAN 特征。但是,作为高可用性策略的一部分,您可以选择使用过程 rdsadmin.rdsadmin_rman_util.enable_block_change_tracking
在只读副本中启用数据块跟踪。如果您将此只读副本提升为源数据库实例,则会为新的源实例启用数据块更改跟踪。因此,您的实例可以受益于快速的增量备份。
以下数据库引擎版本仅在企业版中支持数据块更改跟踪过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
注意
在单租户 CDB 中,以下操作有效,但没有客户可见的机制可以检测操作的当前状态。另请参阅 RDS for Oracle CDB 的限制。
要为数据库实例启用数据块更改跟踪,您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.enable_block_change_tracking
。要禁用数据块更改跟踪,请使用 disable_block_change_tracking
。这些过程不需要任何参数。
要确定是否为您的数据库实例启用了块更改跟踪,请运行以下查询。
SELECT STATUS, FILENAME FROM V$BLOCK_CHANGE_TRACKING;
以下示例为数据库实例启用块更改跟踪。
EXEC rdsadmin.rdsadmin_rman_util.enable_block_change_tracking;
以下示例为数据库实例禁用块更改跟踪。
EXEC rdsadmin.rdsadmin_rman_util.disable_block_change_tracking;
反复检查存档重做日志
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.crosscheck_archivelog
反复检查存档重做日志。
您可以使用此过程反复检查控制文件中注册的存档重做日志并可以选择删除过期的日志记录。当 RMAN 进行备份时,它会在控制文件中创建一条记录。随着时间的推移,这些记录会增加控制文件的大小。我们建议您定期删除过期的记录。
注意
标准 Amazon RDS 备份不使用 RMAN,因此不会在控制文件中创建记录。
该过程使用 RMAN 任务的常见参数 p_rman_to_dbms_output
。
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
布尔值 |
|
|
否 |
当为 当为 |
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
以下示例将控制文件中存档的重做日志记录标记为已过期,但不删除这些记录。
BEGIN rdsadmin.rdsadmin_rman_util.crosscheck_archivelog( p_delete_expired =>
FALSE
, p_rman_to_dbms_output =>FALSE
); END; /
以下示例从控制文件中删除过期的存档重做日志记录。
BEGIN rdsadmin.rdsadmin_rman_util.crosscheck_archivelog( p_delete_expired =>
TRUE
, p_rman_to_dbms_output =>FALSE
); END; /
备份归档的重做日志文件
您可以使用 Amazon RDS 包 rdsadmin.rdsadmin_rman_util
备份 Amazon RDS Oracle 数据库实例的存档重做日志。
以下 Amazon RDS for Oracle 数据库引擎版本支持备份存档重做日志的过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
备份所有存档重做日志
要备份 Amazon RDS Oracle 数据库实例的所有存档重做日志,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_archivelog_all
。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
以下示例备份数据库实例的所有存档重做日志。
BEGIN rdsadmin.rdsadmin_rman_util.backup_archivelog_all( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_parallel =>4
, p_tag => 'MY_LOG_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
备份日期范围中的存档重做日志
要指定日期范围以备份 Amazon RDS Oracle 数据库实例的特定存档重做日志,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_archivelog_date
。日期范围指定要备份哪些存档重做日志。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
date |
介于磁盘上存在的存档重做日志的 |
— |
是 |
存档日志备份的起始日期。 |
|
date |
介于磁盘上存在的存档重做日志的 |
— |
是 |
存档日志备份的结束日期。 |
以下示例备份数据库实例的日期范围中的存档重做日志。
BEGIN rdsadmin.rdsadmin_rman_util.backup_archivelog_date( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_from_date => '03/01/2019 00:00:00
', p_to_date => '03/02/2019 00:00:00
', p_parallel =>4
, p_tag => 'MY_LOG_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
备份 SCN 范围中的存档重做日志
要指定系统更改号 (SCN) 范围以备份 Amazon RDS Oracle 数据库实例的特定存档重做日志,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_archivelog_scn
。SCN 范围指定要备份哪些存档重做日志。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
number |
磁盘上存在的存档重做日志的 SCN。该值必须小于或等于为 |
— |
是 |
存档日志备份的起始 SCN。 |
|
number |
磁盘上存在的存档重做日志的 SCN。该值必须大于或等于为 |
— |
是 |
存档日志备份的结束 SCN。 |
以下示例备份数据库实例的 SCN 范围中的存档重做日志。
BEGIN rdsadmin.rdsadmin_rman_util.backup_archivelog_scn( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_from_scn =>1533835
, p_to_scn =>1892447
, p_parallel =>4
, p_tag => 'MY_LOG_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
备份序列号范围中的存档重做日志
要指定序列号范围以备份 Amazon RDS Oracle 数据库实例的特定存档重做日志,请使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_archivelog_sequence
。序列号范围指定要备份哪些存档重做日志。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
number |
磁盘上存在的存档重做日志的序列号。该值必须小于或等于为 |
— |
是 |
存档日志备份的起始序列号。 |
|
number |
磁盘上存在的存档重做日志的序列号。该值必须大于或等于为 |
— |
是 |
存档日志备份的结束序列号。 |
以下示例备份数据库实例的序列号范围中的存档重做日志。
BEGIN rdsadmin.rdsadmin_rman_util.backup_archivelog_sequence( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_from_sequence =>11160
, p_to_sequence =>11160
, p_parallel =>4
, p_tag => 'MY_LOG_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
执行完整数据库备份
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_database_full
执行备份中包括的所有数据块文件的备份。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_section_size_mb
-
p_include_archive_logs
-
p_optimize
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
以下示例使用参数的指定值来执行数据库实例的完整备份。
BEGIN rdsadmin.rdsadmin_rman_util.backup_database_full( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_parallel =>4
, p_section_size_mb =>10
, p_tag => 'FULL_DB_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
执行租户数据库的完整备份
您可以执行在容器数据库(CDB)中包括租户数据库的所有数据块的备份。适用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_tenant_full
。该过程仅适用于当前数据库备份,并使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_section_size_mb
-
p_include_archive_logs
-
p_optimize
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅 RMAN 过程的常见参数。
以下 RDS for Oracle 数据库引擎版本支持 rdsadmin_rman_util.backup_tenant_full
过程:
-
Oracle Database 21c(21.0.0)CDB
-
Oracle Database 19c(19.0.0)CDB
以下示例使用参数的指定值来执行当前租户数据库的完整备份。
BEGIN rdsadmin.rdsadmin_rman_util.backup_tenant_full( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_parallel =>4
, p_section_size_mb =>10
, p_tag => 'FULL_TENANT_DB_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
执行增量数据库备份
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_database_incremental
执行数据库实例的增量备份。
有关增量备份的更多信息,请参阅 Oracle 文档中的增量备份
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_section_size_mb
-
p_include_archive_logs
-
p_include_controlfile
-
p_optimize
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
number |
|
|
否 |
指定 指定 |
以下示例使用参数的指定值来执行数据库实例的增量备份。
BEGIN rdsadmin.rdsadmin_rman_util.backup_database_incremental( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_level =>1
, p_parallel =>4
, p_section_size_mb =>10
, p_tag => 'MY_INCREMENTAL_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
执行租户数据库的增量备份
您可以执行 CDB 中当前租户数据库的增量备份。适用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_tenant_incremental
。
有关增量备份的更多信息,请参阅 Oracle 数据库文档中的增量备份
该过程仅适用于当前租户数据库,并使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_section_size_mb
-
p_include_archive_logs
-
p_include_controlfile
-
p_optimize
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅 RMAN 过程的常见参数。
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c(21.0.0)CDB
-
Oracle Database 19c(19.0.0)CDB
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
number |
|
|
否 |
指定 指定 |
以下示例使用参数的指定值来执行当前租户数据库的增量备份。
BEGIN rdsadmin.rdsadmin_rman_util.backup_tenant_incremental( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_level =>1
, p_parallel =>4
, p_section_size_mb =>10
, p_tag => 'MY_INCREMENTAL_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
备份表空间
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_tablespace
备份表空间。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_parallel
-
p_section_size_mb
-
p_include_archive_logs
-
p_include_controlfile
-
p_optimize
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
此过程还使用以下其他参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
varchar2 |
有效的空间表名称。 |
— |
是 |
要备份的表空间的名称。 |
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
以下示例使用参数的指定值来执行表空间备份。
BEGIN rdsadmin.rdsadmin_rman_util.backup_tablespace( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_tablespace_name => 'MYTABLESPACE
', p_parallel =>4
, p_section_size_mb =>10
, p_tag => 'MYTABLESPACE_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
备份控制文件
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.backup_current_controlfile
备份控制文件。
该过程使用 RMAN 任务的以下常见参数:
-
p_owner
-
p_directory_name
-
p_label
-
p_compress
-
p_rman_to_dbms_output
-
p_tag
有关更多信息,请参阅“RMAN 过程的常见参数”。
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
以下示例使用参数的指定值来备份控制文件。
BEGIN rdsadmin.rdsadmin_rman_util.backup_current_controlfile( p_owner => '
SYS
', p_directory_name => 'MYDIRECTORY
', p_tag => 'CONTROL_FILE_BACKUP
', p_rman_to_dbms_output =>FALSE
); END; /
执行块介质恢复
您可以使用 Amazon RDS 过程 rdsadmin.rdsadmin_rman_util.recover_datafile_block
恢复各个数据块,即块介质恢复。您可以使用此重载过程来恢复单个数据块或一系列数据块。
该过程使用 RMAN 任务的以下常见参数:
-
p_rman_to_dbms_output
有关更多信息,请参阅 RMAN 过程的常见参数。
此过程使用以下其它参数。
参数名称 | 数据类型 | 有效值 | 默认值 | 必需 | 描述 |
---|---|---|---|---|---|
|
|
有效的数据文件 ID 号。 |
— |
是 |
包含损坏块的数据文件。通过以下任一方式指定数据文件:
|
|
|
有效的整数。 |
— |
是 |
要恢复的单个块的数量。 以下参数是互斥的:
|
|
|
有效的整数。 |
— |
是 |
要恢复的一系列块中的第一个块编号。 以下参数是互斥的:
|
|
|
有效的整数。 |
— |
是 |
要恢复的一系列块中的最后一个块编号。 以下参数是互斥的:
|
以下 Amazon RDS for Oracle 数据库引擎版本支持此过程:
-
Oracle Database 21c (21.0.0)
-
Oracle Database 19c(19.0.0)
以下示例恢复数据文件 5 中的块 100。
BEGIN rdsadmin.rdsadmin_rman_util.recover_datafile_block( p_datafile => 5, p_block => 100, p_rman_to_dbms_output => TRUE); END; /
以下示例将数据文件 5 中的块 100 恢复为 150。
BEGIN rdsadmin.rdsadmin_rman_util.recover_datafile_block( p_datafile => 5, p_from_block => 100, p_to_block => 150, p_rman_to_dbms_output => TRUE); END; /