ITPub博客

首页 > 数据库 > Oracle > Backup And Recovery User's Guide-执行完全数据库恢复-执行整个数据库的完全恢复

Backup And Recovery User's Guide-执行完全数据库恢复-执行整个数据库的完全恢复

原创 Oracle 作者:LuiseDalian 时间:2014-02-27 08:32:54 0 删除 编辑

执行整个数据库的完全恢复

这里假设数据库trgt丢失了大部分或所有的数据文件,并且数据库使用快速恢复区。

在整个数据库的还原和恢复之后,当数据库打开时,在控制文件中记录的丢失的临时表空间会使用之前的大小、AUTOEXTENTMAXSIZE属性重新被创建。

只有丢失的临时表空间被重新创建。

如果临时文件存在于RMAN库中记录的位置上,但具有无效的header,则RMAN不会重新创建这个临时文件。

 

如果临时文件是以OMF创建的,则被重新创建在DB_CREATE_FILE_DEST位置上,否则在它之前的位置被创建。

如果RMAN因为I/O错误或其它原因不能重建这个文件,则会在预警日志中报告错误,且数据打开操作继续执行。

练习:还原和恢复整个数据库

--1. 启动RMAN并连接到目标数据库,RMAN显示它连接到数据库时的状态

--   not started, not mounted, not open(数据库已经mount但没open), none(已经opne)

% rman

RMAN> CONNECT TARGET /

 

--2. 如果数据库没有被mount,则mount

STARTUP MOUNT;

--3. 使用SHOW命令查看预先配置的channel

--   如果需要的设备和通道已经被配置了,则不需要其它的操作;否则 使用CONFIGURE命令配置自动通道或在RUN块中包含ALLOCATE CHANNEL命令

SHOW ALL;

 

 

RMAN configuration parameters for database with db_unique_name PROD1 are:

.

.

.

CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS "SBT_LIBRARY=/usr/local/oracle/backup/lib/libobk.so";

--4. 如果还原口令加密的备份,则指定口令; 如果使用了多个不同的口令创建备份,则需要执行SET DECRYPTION IDENTIFIED BY多次

--   指定还原备份可能需要的所有口令。

SET DECRYPTION IDENTIFIED BY password;

--5. 还原和恢复数据库

--5.1 如果还原所有的数据文件到原始的位置,则顺序地执行RESTORE DATABASERECOVER DATABASE

RMAN> RESTORE DATABASE;

 

Starting restore at 20-JUN-06

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=35 device type=DISK

allocated channel: ORA_SBT_TAPE_1

channel ORA_SBT_TAPE_1: SID=34 device type=SBT_TAPE

channel ORA_SBT_TAPE_1: Oracle Secure Backup

 

channel ORA_DISK_1: starting datafile backup set restore

channel ORA_DISK_1: specifying datafile(s) to restore from backup set

channel ORA_DISK_1: restoring datafile 00001 to /disk1/oracle/dbs/tbs_01.f

channel ORA_DISK_1: restoring datafile 00002 to /disk1/oracle/dbs/tbs_ax1.f

.

.

.

Finished restore at 20-JUN-06

 

RMAN> RECOVER DATABASE;

 

Starting recover at 20-JUN-06

using channel ORA_DISK_1

allocated channel: ORA_SBT_TAPE_1

channel ORA_SBT_TAPE_1: SID=34 device type=SBT_TAPE

channel ORA_SBT_TAPE_1: Oracle Secure Backup

 

starting media recovery

 

channel ORA_DISK_1: starting archived log restore to default destination

channel ORA_DISK_1: restoring archived log

archived log thread=1 sequence=5

channel ORA_DISK_1: restoring archived log

archived log thread=1 sequence=6

.

.

.

channel ORA_DISK_1: reading from backup piece /disk1/oracle/work/orcva/TKRM/backupset/2007_06_20/o1_mf_annnn_TAG20070620T113128_29jhr197_.bkp

channel ORA_DISK_1: piece handle=/disk1/oracle/work/orcva/TKRM/backupset/2007_06_20/o1_mf_annnn_TAG20070620T113128_29jhr197_.bkp tag=TAG20070620T113128

channel ORA_DISK_1: restored backup piece 1

channel ORA_DISK_1: restore complete, elapsed time: 00:00:02

archived log file name=/disk1/oracle/work/orcva/TKRM/archivelog/2007_06_20/o1_mf_1_5_29jhv47k_.arc thread=1 sequence=5

channel default: deleting archived log(s)

.

.

.

media recovery complete, elapsed time: 00:00:15

Finished recover at 20-JUN-06

 

--5.2 如果手动地分配通道,则必须在一个RUN块中执行RESTORERECOVER命令

RUN

{

  ALLOCATE CHANNEL c1 DEVICE TYPE sbt;

  RESTORE DATABASE;

  RECOVER DATABASE;

}

 

--5.3 还原数据文件到新的位置,则必须在RUN块中执行RESTORERECOVER命令,使用SET NEWNAME来重命名数据文件。

RUN

{ 

  SET NEWNAME FOR DATAFILE 2 TO '/disk2/df2.dbf';

  SET NEWNAME FOR DATAFILE 3 TO '/disk2/df3.dbf';

  SET NEWNAME FOR DATAFILE 4 TO '/disk2/df4.dbf';

  RESTORE DATABASE;

  SWITCH DATAFILE ALL;

  RECOVER DATABASE;

}

--6. 检查输出来确定介质恢复是否成功,如果成功打开数据库

ALTER DATABASE OPEN;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/17013648/viewspace-1093859/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2012-02-06

  • 博文量
    1986
  • 访问量
    5685852