RMAN的使用(七)

十五、非归档模式下的完全恢复

网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、重庆小程序开发公司、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了玉田免费建站欢迎大家使用!

非归档模式下的恢复可能是完全恢复,也可能是不完全恢复,如果联机重做日志被复写,只能做不完全恢复的可能性更大。

参数文件丢失

1.控制文件、数据文件以及联机重做日志文件丢失的恢复

先对数据库做全备。包括数据文件、控制文件和参数文件,并使用快闪恢复区作为备份目录。

SQL> shutdown immediate;

SQL> startup mount;

[oracle@oracle11g ~]$ rman target username/password

RMAN> backup as compressed backupset database;

创建测试表

SQL> alter database open;

SQL> create table test123 as select * from dba_segments;

删除所有数据文件、控制文件

[oracle@oracle11g ~]$ rm -rf /u01/app/oradata/orcl/*

重启数据库,这里直接shutdown immediate可能失败,也可以成功。

SQL> shutdown abort

SQL>

RMAN的使用(七)

首先恢复控制文件

[oracle@oracle11g 2018_08_05]$ rman target /

RMAN> restore controlfile from '/u01/app/fast_recovery_area/orcl/autobackup/2018_08_05/o1_mf_s_983353814_fpdpkdox_.bkp'

--这里也可以让RMAN自己选择备份文件

RMAN> restore controlfile from autobackup;

SQL> alter database mount;

接着恢复数据库

RMAN> restore database;

由于丢失了所有联机重做日志文件,需要恢复数据库并使用noredo选项,不让RMAN尝试将重做日志应用于数据库,再通过resetlogs重建联机重做日志。

RMAN> recover database noredo;

SQL> alter database open resetlogs;

验证测试表丢失

SQL> select * from test123 where rownum <=1;

2.数据文件丢失的恢复

删除数据文件users01.dbf

[oracle@oracle11g orcl]$ rm -rf users01.dbf

SQL> shutdown abort;

SQL> startup

RMAN> restore datafile 4;

RMAN> recover datafile 4;

SQL> alter database open;

如果联机重做日志没有被复写,能做到完全恢复,否则只能做不完全恢复。

RMAN> restore database;

RMAN> recover database;

SQL> alter database open resetlogs;

3.将数据文件恢复到其他磁盘目录

如果是磁盘损坏,恢复数据文件时必须更改数据文件存放路径。

[oracle@oracle11g orcl]$ rm -rf undotbs01.dbf system01.dbf

SQL> shutdown abort;

SQL> startup

RMAN> run {

set newname for datafile

'/u01/app/oradata/orcl/system01.dbf' to '/u01/app/backup/orcl/system01.dbf';

set newname for datafile

'/u01/app/oradata/orcl/undotbs01.dbf' to '/u01/app/backup/orcl/undotbs01.dbf';

restore database;

switch datafile all;

}

RMAN> recover database until cancel;

SQL> alter database open resetlogs;


文章标题:RMAN的使用(七)
文章路径:http://hbruida.cn/article/ijhsgd.html