+ -
当前位置:首页 → 问答吧 → RMAN备份请教

RMAN备份请教

时间:2010-08-18

来源:互联网

环境:
   目标数据库  2台AIX 5.3   HA +   ORACLE 9.2.0.7 RAC
    恢复目录数据库    redhat  oracle 10.2.0.1
脚本:
  
. /home/oracle/.profile
ORACLE_HOME=/u01/app/oracle/product/9.2.0
export ORACLE_HOME
/u01/app/oracle/product/9.2.0/bin/rman target / catalog rman/rman@rman cmdfile=/backup/rman.cmd  msglog=/backup/log/rman.log

rman.cmd
  run

{

    allocate channel ch01d type disk  maxpiecesize=10G;
   
allocate channel ch03d type disk  maxpiecesize=10G;

    allocate channel ch02d type disk  maxpiecesize=10G;

    allocate channel ch04d type disk  maxpiecesize=10G;

   

    backup full
      
       (database
       format '/backup/aistest/full/AistestData_%u_%c_%s_%p'
      
         filesperset=1
      
         tag=" Aistest_fulldata_bak_nas");

   

    backup current controlfile format '/backup/aistest/full/AistestCtl_%u_%c_%s_%p'
   
    tag=" Aistest_ctl_bak";

   

      sql 'alter system archive log current';

  

    backup  
  
       (archivelog all
       format '/backup/aistest/full/AistestArch_%u_%c_%s_%p'
      
        filesperset=2
      
        tag=" Aistest_arch_bak_nas");

     

release channel ch01d;

     release channel ch03d;

     release channel ch02d;

     release channel ch04d;

}


问题: 每次在数据文件备份完后会报错:ORACLE error from recovery catalog database: ORA-03114: not connected to ORACLE
           但是脚本里我已经添加catalog rman/rman@rman   且告诉我已经连上了。
       而且我也试过手动 connect catalog rman/rman@rman    还是在备份完数据文件的时候报相同的错

       登录恢复目录数据库发现各个表空间都已经99%,扩容后还是出问题。登录redhat,su到oracle,执行rman,一直停在那里没有反应
       [oracle@q]$ whereis rman
           rman: /usr/X11R6/bin/rman /usr/bin/X11/rman
           原来redhat也有一个应用叫RMAN ,修改oracle环境变量
       [oracle@q]$ echo $PATH
           /u01/oracle/app/product/10.2.0/bin:/home/oracle/bin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin
           执行脚本后还是出相同问题
       检查alert LOG也没发现特别的地方
       最后我改成nocatalog模式备份,就没问题
       请问我再怎么查找问题?

PS:用上面脚本在NOCATALOG模式下执行,元数据在目标数据库的控制文件里。但我已经执行 backup databse ,这时候已经把数据文件和控制文件备份在
AistestData_%u_%c_%s_%p,  是不是我只要保管好这个文件就可以了。我现在要铲掉AIX, 是不是今后如果要恢复,只要装个数据库建个实例,然后用这个文件
先恢复控制文件,然后再恢复数据文件? 总结一句话就是,NOCATALOG模式下,我备份出来的AistestData_%u_%c_%s_%p可以在另一套全新的环境里恢复到原来一模一样,不会丢失任何东西.还是说 我除了AistestData_%u_%c_%s_%p还需要上面的AistestCtl_%u_%c_%s_%p,另外还要备份参数文件等等

作者: toutou1231   发布时间: 2010-08-18

catalog  是需要一个实例的,如果没有这个实例请使用控制文件方式,亦即nocatalog方式


linux自己也有个rman  所以在oracle用户环境变量中加入$ORACLE_HOME/bin

作者: duolanshizhe   发布时间: 2010-08-18

SQL> select status from v$instance;

STATUS
------------
OPEN

恢复目录数据库肯定有实例了,LINUX环境变量也没问题吧,我已经 echo $PATH 把结果发出来了,$ORACLE_HOME/bin在前面

在AIX上
rman  tager /
drop catalog
create catalog
register database
备份还是出相同问题

作者: toutou1231   发布时间: 2010-08-18

能回答下我最后PS的那个问题吗?
急着要铲掉AIX   但备份一直不成功
如果nocatalog 方式也可以的话,就先铲了  以后有机会再找not connected to ORACLE 问题

作者: toutou1231   发布时间: 2010-08-18

我在SOLARIS10下安装ORACLE11GR2时,就卡在链接RMAN这里了

作者: renxiao2003   发布时间: 2010-08-18

版主9命啊
能不能提供个思路,我应该从哪里找问题

或者告诉我做完哪些备份后,我就可以安心把现在这套环境铲了,不担心恢复。

作者: toutou1231   发布时间: 2010-08-18

我刚突然想到目标数据库跟恢复目录数据库在不同网段

前2天网络组的人总喊着要加防火墙 是不是起了什么策略
但问网络组又还没搞


SQL> conn rman/rman@rman
Connected.
在目标数据库上也可以连上恢复目录数据库

唉 还是不知道怎么回事

作者: toutou1231   发布时间: 2010-08-18