--==============================
-- 基于catalog 创建RMAN存储脚本
--==============================
简言之,将rman的备份恢复命令写成脚本并保存在恢复目录内,恢复目录内的脚本可用性及通用性高于基于文件系统的脚本。
客户端只要能够登录到RMAN恢复目录,则这些脚本可用,尤其对于global脚本,可以被任意注册的数据库调度。
一、脚本的分类
local : 在rman连接的目标数据库下创建的脚本,此类脚本仅仅适用于当前目标数据库。即是针对特定的数据库创建的rman脚本
global : 能够在恢复目录注册的任意目标数据库中执行
二、创建脚本
--创建全局备份脚本
RMAN> create global script global_full_backup
2> comment 'A script for full backup to be used with any database'
3> {
4> backup database
5> plus archivelog
6> tag='Whole_db_bk';
7> delete obsolete;
8> }
created global script global_full_backup
--创建本地备份脚本
RMAN> create script full_backup
2> comment 'A script for full backup to be used with current target database'
3> {
4> backup as compressed backupset
5> database plus archivelog delete input
6> tag='Whole_db_bk';
7> delete obsolete;
8> }
created script full_backup
--从文本文件创建脚本
[oracle@oradb bk]$ cat backup_ctl_spfile --注意文本文件必须以"{" 开头,以"}" 结尾
{
allocate channel ch1 device type disk;
backup current controlfile
tag='ctl_spfile'
format '/u01/oracle/bk/rmbk/ctl_spfile_%d_%U';
release channel ch1;
}
RMAN> create script ctl_spfile_bk from file '/u01/oracle/bk/rmbk/backup_ctl_spfile';
script commands will be loaded from file /u01/oracle/bk/rmbk/backup_ctl_spfile
created script ctl_spfile_bk
三、查看脚本的内容
print [global] script script_name
print [global] script script_name to file '<dir>' --将RMAN存储脚本转换到文件系统可读文件
RMAN> print script ctl_spfile_bk;
printing stored script: ctl_spfile_bk
{
allocate channel ch1 device type disk;
backup current controlfile
tag='ctl_spfile'
format '/u01/oracle/bk/rmbk/ctl_spfile_%d_%U';
release channel ch1;
}
RMAN> print script ctl_spfile_bk to file '/u01/oracle/bk/rmbk/backup_ctl_spfile2';
script ctl_spfile_bk written to file /u01/oracle/bk/rmbk/backup_ctl_spfile2
查看当前恢复目录内的脚本
list [global | all] script names
RMAN> list script names;
List of Stored Scripts in Recovery Catalog
Scripts of Target Database ORCL
Script Name
Description
-----------------------------------------------------------------------
ctl_spfile_bk
full_backup
A script for full backup to be used with current target database
Global Scripts
Script Name
Description
-----------------------------------------------------------------------
global_full_backup
A script for full backup to be used with any database
四、更新脚本
replace [global] script scrip_name {....}
replace [global] script script_name from file '<dir>' --从文件更新脚本
RMAN> replace global script global_full_backup
2> {
3> backup as compressed backupset database plus archivelog
4> tag='whole_db_bk';
5> delete obsolete;
6> }
replaced global script global_full_backup
五、执行脚本
方法:RUN { EXECUTE [global] SCRIPT script_name; }
从rman客户端直接执行恢复目录内的脚本
rman target sys/redhat@orcl catalog rman/rman@asmdb script 'script_name';
RMAN> run { execute global script global_full_backup;}
executing global script: global_full_backup
六、删除脚本
delete [global] script script_name
RMAN> delete script ctl_spfile_bk;
deleted script: ctl_spfile_bk
七、其它
注意:使用EXECUTE SCRIPT, DELETE SCRIPT ,PRINT SCRIPT等命令时,如果一个本地的脚本未找到,则寻找全局的脚本来代替。
因此应当注意命名规范,尽可能的不使用重名的脚本名,当DELETE SCRIPT 找不到本地脚本,而找到同样名字的全局脚本,则全局
脚本被删除
八、更多参考
有关基于用户管理的备份和备份恢复的概念请参考:
Oracle 冷备份
Oracle 热备份
Oracle 备份恢复概念
Oracle 实例恢复
Oracle 基于用户管理恢复的处理(详细描述了介质恢复及其处理)
有关RMAN的恢复与管理请参考:
RMAN 概述及其体系结构
RMAN 配置、监控与管理
RMAN 备份详解
RMAN 还原与恢复
有关Oracle体系结构请参考:
Oracle 实例和Oracle数据库(Oracle体系结构)
Oracle 表空间与数据文件
Oracle 密码文件
Oracle 参数文件
Oracle 数据库实例启动关闭过程
Oracle 联机重做日志文件(ONLINE LOG FILE)
Oracle 控制文件(CONTROLFILE)
Oracle 归档日志
分享到:
相关推荐
- **创建和管理存储脚本**:RMAN脚本可以帮助自动化备份过程,通过在Catalog中存储这些脚本,可以轻松地重复执行备份任务。 - **删除恢复目录**:在需要时,可以删除不再使用的恢复目录条目,以清理和优化Catalog...
RMAN 基于 Catalog 配置是指使用 RMAN 工具来备份和恢复 Oracle 数据库,而 Catalog 是 RMAN 的元数据存储库,用于存储备份的元数据信息。 环境操作系统和数据库版本 本指南使用的环境操作系统是 Windows 7 专业版...
本文将深入探讨“rman备份脚本(已测试)”这一主题,包括RMAN的基本概念、备份脚本的构成、以及如何在生产环境中应用。 RMAN是Oracle数据库自带的一个命令行工具,它提供了全面的数据保护方案,支持多种备份类型,如...
"Linux环境下RMAN备份实例脚本" 本文档介绍了在Linux环境下使用RMAN...本文档提供了一个完整的 RMAN 备份实例脚本,包括配置 Catalog、连接到目标数据库和 Catalog、创建 Catalog 表、配置参数、备份方案和计划任务。
在企业环境中,使用RMAN创建和维护数据库备份脚本是非常关键的,因为它确保了数据的安全性和业务连续性。 在"oracle rman 备份脚本"中,我们需要理解以下几个核心知识点: 1. **RMAN命令结构**:RMAN的命令通常由...
- **Catalog**:存储RMAN元数据的地方,包括备份信息、归档日志等。 - **Target Database**:需要进行备份的目标数据库。 - **Control File AutoBackup**:自动备份控制文件的功能,以防止控制文件损坏导致无法恢复...
首先,RMAN catalog是一个中央存储库,用于记录所有与备份和恢复相关的元数据,如备份集、归档日志、控制文件等的信息。这些元数据存储在一个专门的Oracle数据库中,通常称为Catalog数据库。使用Catalog的好处在于...
### Linux 平台下 RMAN 全备与增量备份 Shell 脚本解析 #### 一、RMAN 备份基础知识 RMAN (Recovery Manager) 是 Oracle 数据库的一个非常强大的备份与恢复工具,适用于各种操作系统环境,包括 Linux。本文将重点...
Recovery Catalog中存储的信息包括数据文件和归档日志的备份信息、数据文件的拷贝、目标数据库的物理结构以及RMAN相关的脚本。 六、目标数据库的控制文件 目标数据库的控制文件中包含了一个特殊的区域,用于存储...
通过`create catalog`命令可以创建恢复目录数据库。 八、RMAN与Flash Recovery Area (FRA) FRA是Oracle数据库自动管理备份和归档日志的区域。RMAN可以配置使用FRA,简化备份管理和存储。 九、RMAN的优化与性能 ...
此外,RMAN的脚本化能力也得到了加强,允许用户创建复杂的备份策略。 RMAN的备份类型有全库备份、增量备份和差异备份。全库备份包括所有数据文件、控制文件、Redo日志文件和其他重要文件,确保在灾难恢复时能完整...
CATALOG数据库用于集中存储RMAN的所有备份信息,包括备份集、映像副本、日志等元数据。为了确保高可用性和安全性,CATALOG数据库应独立于目标数据库之外,最好部署在不同的物理主机上。此外,CATALOG数据库也需要...
3. **操作系统备份**:通过如`COPY`、`CP`等OS命令进行的备份,可以通过RMAN的`CATALOG`命令将其注册到恢复目录中。 通过上述介绍,我们可以看到RMAN不仅是一个强大的备份工具,还提供了丰富的功能来保障Oracle...
RMAN使用CATALOG数据库来存储备份元数据,这对于管理和追踪备份历史非常关键。可以通过RMAN命令将备份信息注册到CATALOG,以便于后续的恢复操作。 ### 磁带接口 RMAN支持多种备份介质,包括磁带设备。通过配置磁带...
2. **空块压缩**:RMAN 可以在备份过程中压缩空闲的数据块,节省存储空间。 3. **增量备份**:RMAN 支持在块级别进行增量备份,仅备份自上次备份以来发生变化的数据块。 4. **备份集**:RMAN 将备份组织为备份集,...
它能够存储 RMAN repository 信息和频繁运行的备份脚本。 #### RMAN Repository RMAN repository 主要存储于备份目标数据库的控制文件中。通过使用 RMAN 的 `LIST`, `REPORT` 和 `SHOW` 命令可以查询 RMAN ...
RMAN Catalog是存储备份元数据的数据库,用于跟踪备份信息和恢复操作。使用Catalog可以更方便地管理大量备份集,并支持跨数据库的恢复操作。 10. RMAN与Flash Recovery Area: Flash Recovery Area是Oracle数据库...
3. 创建和管理RMAN脚本:编写RMAN脚本可以自动化备份和恢复任务,提高效率。 通过以上对RMAN的深入学习,初学者能够更好地理解其工作原理,并熟练运用RMAN进行数据库的备份与恢复,保障数据的安全性。在实际操作中...