温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

RMAN的使用(八)

发布时间:2020-08-11 00:12:50 来源:ITPUB博客 阅读:138 作者:KFCLYY 栏目:关系型数据库

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

在归档模式下,拥有RMAN的备份和归档重做日志以及当前的重做日志文件,可以做到数据库的完全恢复,并且是联机状态的下的恢复。

1.非系统表空间损坏的恢复

做数据库完全备份

RMAN> backup as compressed backupset database plus archivelog delete all input;

创建测试表

SQL> create table test123 tablespace users as select * from dba_segments;

删除测试表的表空间数据文件

SQL> ! rm -rf /u01/app/oradata/orcl/users01.dbf

重启数据库

SQL> shutdown immediate

SQL> startup

RMAN的使用(八)

为了先打开数据库,先将该数据库文件离线。

SQL> alter database datafile 4 offline;

SQL> alter database open; --这里也可以在mounted状态进行恢复后再打开数据库

还原数据文件

RMAN> restore datafile 4;

恢复数据文件

RMAN> recover datafile 4;

将数据库文件online

SQL> alter database datafile 4 online;

也可以将以上命令放在rman脚本中。

run {

sql 'alter database datafile 4 offline';

restore tablespace users;

recover tablespace users;

sql 'alter database datafile 4 online';

}

2.系统表空间损坏的恢复

系统表空间损坏,必须先做恢复,数据库才能打开。

删除数据文件system01.dbf

[oracle@oracle11g ~]$ rm -rf /u01/app/oradata/orcl/system01.dbf

注意:此时可能会无法重新连接数据库:

RMAN的使用(八)

使用RMAN登录也失败,使用shutdown abort停止数据库:

RMAN的使用(八)

启动数据库到mount状态

SQL> shutdown immediate

SQL> startup

使用RMAN脚本恢复数据文件。

RMAN> run {

sql 'alter database datafile 1 offline';

restore datafile 1;

recover datafile 1;

sql 'alter database datafile 1 online';

}

启动数据库

SQL> alter database open;

3.所有数据文件丢失的恢复

删除所有数据文件。

[oracle@oracle11g orcl]$ rm -f /u01/app/oradata/orcl/*.dbf

使用RMAN脚本恢复数据文件。

SQL> shutdown abort

SQL> startup

RMAN> run {

restore database;

recover database;

sql 'alter database open';

}

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI