返回列表 回复 发帖

rman 异机恢复

1,在目标机上安装数据库软件
2,在目标机上创建数据库实例
     oradim -new -sid stock -srvc OracleServicestock

3,为新的实例配置监听

4,有了实例之后,登录实例
    set ORACLE_SID=stock
    sqlplus / as sysdba

5,登录实例之后,从源机上获得参数文件
      参数文件中包含了控制文件、闪回目录等,保证这些路径在目标机上创建完成。

6,利用参数文件启动数据库到nomount状态
      SQL> startup pfile='d:\temp\initstock.ora'

7,当启动到nomount状态之后,登录RMAN
     rman target /

8,从备份中恢复控制文件
     RMAN> restore controlfile from 'd:\temp\controlfile_backup.bak'

9,恢复了控制文件之后,在SQLPlus中,将数据库启动到mount状态。
     SQL> alter database mount;

10,重新登录RMAN,并利用控制文件恢复整个数据库。
       控制文件中保存了所有备份信息,因此,需要保证控制文件中记录的备份集路径与拷贝到目标机的数据库备份一致。

11,恢复数据库
       RMAN> restore database

12,如果恢复过程中出现问题,那么需要查看一下控制文件中记录的备份集的详细信息:
        RMAN> list backup

13,可以选择其中某个备份集进行恢复
        RMAN> restore database from tag='TAGxxxxxxxxxxxx'

14,如果所选择的备份集不可用,状态为Expired,那么应该首先修改其状态,否则无法利用备份集进行恢复。
       RMAN> change backupset 3(id) available

15,当恢复数据库之后,在SQL Plus环境中会发现日志与数据文件的scn不一致,事实上redo log根本不存在。
       那么,应当以resetlogs方式打开,此时Oracle会提示,首先应该尝试利用重做日志进行恢复。
      SQL> recover database using autobackup controlfile until cancel
      直至放弃利用重做日志进行恢复。
16,利用resetlogs方式打开数据,此时,将进行重做日志的创建:
       alter database open resetlogs;

17,备份数据库
版主发力,支持。
你写的很详细 实践一下
返回列表