ITPub博客

首页 > 应用开发 > IT综合 > Recovery 恢复

Recovery 恢复

原创 IT综合 作者:xxgoracle 时间:2004-12-14 18:57:36 0 删除 编辑

1.Database open,datafile deleted 数据库打开时,文件被删除.

*数据文件在数据库打开时被删除.有两个方法可以对打开的数据库进行恢复;还原数据文件或者表空间.下面两个实例显示了该方法:

☆1. datafile recovery 数据文件恢复.

RMAN>run {

2>allocate channel dev1 type disk;

3>sql "alter tablespace offline immediate";

4>restore datafile ;

5>recover datafile ;

6>sql "alter tablespace online";

7>release channel dev1;

8>}

注:其中tablespacedatafilenumber 可查询视图v$datafile 的File#,name列来获得.

[@more@]

☆2. Tablespace recovery 表空间恢复

RMAN>run {

2>allocate channel dev1 type disk;

3>sql "alter tablespace offline immediate";

4>restore tablespace ;

5>recover tablespace ;

6>sql "alter tablespace online";

7>release channel dev1;

8>}

注:若还原系统表空间文件(system01.dbf),数据库必须关闭,因为系统表空间不可以脱机.

2. Complete restore (lost online redo) and rollforward database closed 完全还原(丢失联机日志)并且前滚数据库关闭.

RMAN>run {

2>allocate channel dev1 type disk;

3>set until logseg=105 thread=1;

4>restore controlefile to 'e:/oracle/dbs/ctrltargdb.ctl';

5>replicate controlfile from 'e:/oracle/dbs/ctrltargdb.ctl';

6>restore database;

7>sql "alter database mount";

8>recover database;

9>sql "alter database open resetlogs";

10>release channel dev1;

11>}

*注:'set until' 命令指明恢复到指定的日志文件.这一点在数据文件恢复时很重要,否则RMAN将试图恢复到最近的数据文件,该数据文件可能在指定的日志以前.

*'replicate controlfile'复制还原的控制文件到 init.ora 指定的控制文件.

*若数据库使用 with resetlogs 打开,则需要使用 reset database 命令注册改变后的数据库.在使用 resetlogs命令打开数据库后强烈作一个完全的数据库备份.

3. Restore of a subset of datafiles,complete recovery 还原数据文件的子集,完全恢复.

RMAN>run {

2>allocate channel dev1 type disk;

3>sql "alter database mount";

4>restore datafile ;

5>restore datafile ;

6>restore archivelog all;

7>recover database;

8>sql "alter database open";

9>release channel dev1;

10>}

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

下一篇: Scripts 脚本
请登录后发表评论 登录
全部评论
  • 博文量
    37
  • 访问量
    526781