科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道Oracle数据库中Rman操作简单分析

Oracle数据库中Rman操作简单分析

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Rman操作简单分析   rman 备份恢复的一个特定例子。(参考:http://www.dbanotes.net/Oracle/Rman...lfile_howto.htm)      rman 对dbms_backup.restore 的一些特定调用完?梢酝ü??ebug 分析出来。

作者:中国IT实验室 来源:中国IT实验室 2007年9月16日

关键字: 架构 数据库 ORACLE

  • 评论
  • 分享微博
  • 分享邮件

  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模式进行分析是一种非常有效的办法。如果可能得话,以后的文章中我会举几个例子来说明。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章