http://www.itpub.net/245264.html
Rman操作简单分析
在我的上一篇文章中为大家演示了rman 备份恢复的一个特定例子。(参考:http://www.dbanotes.net/Oracle/Rman...lfile_howto.htm)
rman 对dbms_backup.restore 的一些特定调用完梢酝üebug 分析出来。
通过设置debug 模式,我们可以跟踪到大量的Log,从而为分析提供一定的说明。假定我们提交如下的命令:
rman target / debug trace=d:/rman_trace.log
通过查看日志我们得之,rman 首先确定数据库状态:
DBGSQL: EXEC SQL AT TARGET select decode(status,'OPEN',1,0) into :b1 from v$instance
DBGSQL: sqlcode=0
DBGSQL: :b1 = 1
判断数据库是否是在open 状态下。然后,要去获取数据库的compatible参数值。
接下来调用dbms_backup_restore确定rman 可用的版本信息。对应的一些参数如下:
protocol_version_number_min NUMBER := 8;
protocol_release_number_min NUMBER := 0;
protocol_update_number_min NUMBER := 4;
protocol_version_number_max NUMBER := 9;
protocol_release_number_max NUMBER := 2;
protocol_update_number_max NUMBER := 0;
804-920 ,这个范围内可用,804 ? 920 ? 是不是很熟悉?
下面调用dbms_rcvman的getPackageVersion 函数
($ORACLE_HOME/rdbms/admin/recover.bsq创建dbms_rcvman ,并可以获得相关注释)获取package 的版本可用信息。
08.00.04到09.02.00
接下来rman 会查询V$database ,从中获取name ,resetlogs_time ,resetlogs_change# ,dbid 等信息。
下面这个比较重要, x$kcccp( Kernel Cache Checkpoint Progress)中获取检查点记录:
类似如下的SQL:
select nvl(max(cpmid),0) from x$kcccp where cpsta=2
这些操作完成后,rman 从v$option 中获取相关信息,包括:'Parallel backup and recovery','Incremental backup and
recovery','Duplexed backups','Block Media Recovery','Point-in-time tablespace recovery',通过这些来判断数据库是否具有这些
功能。
然后Log中显示连接到目标数据库。
分析过程并不复杂,不过在涉及到深入的命令的时候会产生大量的Log,要有一定的耐心才能继续下去。在rman 出现故障的时候,
设置Debug模式进行分析是一种非常有效的办法。如果可能得话,以后的文章中我会举几个例子来说明。
参考信息
dbmsbkrs.sql 和 prvtbkrs.plb 文件说明注释(可在你的系统 $ORACLE_HOME/rdbms/admin/中找到.)
《Oracle 9i RMAN备份与恢复技术》 清华出版社 2.12节 从开始到结束的rman进程 p41
Steve Adams's Q+A http://www.ixora.com.au/q+a/0102/06135327.htm
分享到:
相关推荐
1. **实例与数据库状态**:进行任何RMAN操作前,必须确保Oracle实例已经启动,并且数据库处于加载或打开状态。这是因为RMAN的所有操作都是基于当前活动实例来进行的。 2. **操作模式**:RMAN提供了两种主要的操作...
最后,"[三思笔记]一步一步学RMAN(05)-rman基础知识补充(1).doc" 可能会涉及一些RMAN的高级特性,比如自动备份、备份集和映像副本的区别、RMAN的通道管理、以及如何利用RMAN进行数据库的性能分析和维护。 总的来说...
5. **记录和监控**:记录所有的RMAN操作,并对其进行监控,以便及时发现并解决问题。 ### 案例分析 虽然题目中没有提供具体案例,但我们可以假设一个典型的场景来进行分析。比如,在一个大型电子商务公司的生产...
退出 RMAN 非常简单,只需要输入 `exit` 命令即可。 #### 五、RMAN 的其他高级功能 除了基本的连接和操作之外,RMAN 还提供了许多其他有用的功能,比如日志输出: - **指定日志输出**: 在启动 RMAN 时,可以通过...
- **脚本模式**:主要用于简单的备份任务,不保存到RMAN目录中。 #### 三、RMAN会话状态 RMAN支持三种会话状态: - **MOUNT状态**:在MOUNT状态下,可以访问数据库控制文件中的信息,但数据文件仍然是只读的。 - **...
描述:RMAN可以完成数据库备份和恢复的各种任务,并提供了一些操作系统管理备份所没有的特征,如频繁执行的操作可以以脚本的形式保存在数据库中,使用增量块级备份只备份从上一次备份以来发生变化的数据块等等。RMAN...
- 如何使用RMAN命令行工具进行简单的备份和恢复操作。 2. **备份策略**: - 如何根据不同的业务需求制定备份计划。 - 完全备份与增量备份的区别及应用场景。 - 如何评估备份效率并优化备份性能。 3. **数据...
通过RMAN,DBA可以执行各种类型的备份操作,包括全备、增量备份、表空间备份等,并能够对损坏的数据文件或控制文件进行恢复。 #### 二、RMAN基本命令结构 RMAN的基本命令结构通常由以下几部分组成: 1. **连接目标...
2. 计算相对简单,一般只有少数几步操作组成。 3. 事务型处理操作涉及数据的增、删、改、查,对事务完整性和数据一致性要求非常高。 4. 事务性操作都是实时交互式操作,至少能在几秒执行完成。 5. 索引是支撑事务型...
RMAN能够执行自动备份管理、配置备份策略、执行介质恢复,并提供数据库的性能分析。通过RMAN,你可以创建脚本化的备份计划,确保定期执行备份任务,同时支持网络备份设备,如磁带驱动器或网络存储。 在备份策略中,...
* 计算相对简单,一般只有少数几步操作组成。 * 事务型处理操作涉及数据的增、删、改、查,对事务完整性和数据一致性要求非常高。 * 事务性操作都是实时交互式操作,至少能在几秒内执行完成。 * 索引是支撑事务型...
逻辑备份则是通过导出/导入数据来实现,适用于小规模数据库或需要备份特定对象的情况,操作相对简单,但恢复速度较慢,且不能备份表空间或整个数据库。 RMAN(Recovery Manager)是Oracle8以后推荐的备份工具,支持...
RMAN能管理备份、转储和恢复操作,且包含目标数据库、服务器会话、恢复管理器仓库、通道和介质管理库等组件,提供更高级的备份策略,如增量备份、合成备份等。RMAN的优势在于它能够自动化备份过程,提高效率,但可能...
这种处理方式的特点是操作细粒度、计算简单、事务完整性和数据一致性要求高。在数据量和并发交易量较小的情况下,单机版的关系型数据库(如Oracle、MySQL、SQL Server)配合高可用措施(如DataGuard、RMAN、MySQL...
这种方法简单直观,但可能在数据库运行时无法进行,且不包含重做日志,因此恢复时可能需要额外的操作。 六、案例分析 在案例中,管理员首先使用RMAN进行了数据库的完整备份,并启用了控制文件的自动备份。随后,...
4. **恢复顾问**:RMAN自带的恢复顾问可以分析备份集,推荐最佳恢复方案,简化恢复过程。 **自动备份的重要性** 自动备份是防止数据丢失的关键措施,尤其对于Oracle这样的大型数据库系统。定期备份可以应对硬件故障...
Oracle简易版教程旨在帮助初学者快速理解并掌握Oracle数据库系统的基本操作和管理。Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,尤其在企业级应用中占有重要地位。本教程将涵盖以下几个关键知识点:...