您的位置:首页 > 数据库 > Oracle

oracle rman catalog备份和恢复

2015-12-01 15:38 477 查看
1.丢失控制文件

启动数据库至nomount状态:restore controlfile from autobackup/restore controlfile from '+data/backup/contrlbak/...'

->alter database mount->open;

2.误删数据文件

启动至mount状态->alter database datafile 7 offline->alter database open->restore datafile 7->recover datafile 7->alter database datafile online;

3.丢失参数文件

此时参数文件丢失,catalog 中根据DBID识别注册数据库,此时无法识别.

export ORACLE_SID=orcl1->rman target/->restore spfile from '+data/autobackup/2015_11_27/s_896863604.1824.896863605'

->shutdown immediate;

然后可以连接catalog再进行其它恢复,最后必须执行restore database和recover database,最后alter database open resetlogs才能open数据库。

4.recover database定义

recover database,是做的完全恢复,也就是说日志文件归档的和在线日志必须完好无损,还有数据文件,控制文件都准备齐全才可!如果有在线日志

损坏,或者归档日志缺失的话,就无法执行完全恢复,需要不完全恢复了!recover database using backup controlfile......or until cancel;然后

resetlogs打开,再不行就是使用隐含参数打开!

5.alter database open resetlogs

open resetlogs应该是将日志重新归位,使数据库的scn,检查点等保持一致;相当于把所有的联机日志重新“格式化”。这是会丢失数据的。

resetlog 选项在不完全恢复时用,归档日志序号重新开始排序

noresetlog 在完全恢复的时候用

6.基于时间点的恢复

SQL>set time on;

主要是需要恢复的时间点的选取;

启动至mount状态

RMAN->run{

SET UNTIL TIME "to_date('2014-01-17 09:54:33','yyyy-mm-dd hh24:mi:ss')";

RESTORE DATABASE;

RECOVER DATABASE;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: