rman恢复4例

不完全恢复
1、基于时间点的恢复:
不完全恢复,基于时间的,恢复删除的表。
试用场景:建立了1个表,全备份,后来drop了,使用rman恢复到之前的时间点
startup mount;
 rman> restore database until time "to_date('2013-4-3 14:55:00','YYYY-MM-DD HH24:MI:SS')";
  rman> recover database until time "to_date('2013-4-3 14:55:00','YYYY-MM-DD HH24:MI:SS')";
 rman> alter database open resetlogs;


2、基于scn的恢复:
不完全恢复
试用场景:建立了1个表,全备份,后来drop了,使用rman恢复到之前的scn
首先找到一个认为正确的scn时间
   select timestamp_to_scn(to_date('2013-4-3 15:23:00','YYYY-MM-DD HH24:MI:SS')) as scn from dual;
    scn:--1935250
   startup mount;
   rman> restore database until scn 1935250;
   rman> recover database until scn 1935250;
    rman> alter database open resetlogs;

3、完全恢复:
注意:删除的数据,表啥的恢复不了,请用不完全恢复
SQL> startup mount
C:\Users\Administrator>rman target /
恢复管理器: Release 10.2.0.3.0 - Production on 星期一 4
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
已连接到目标数据库: ORCL (DBID=1277091135, 未打开)
RMAN> restore database;  用rman还原数据库
RMAN> recover database   用rman恢复数据库
RMAN> alter database open;

4、备份集恢复、复制数据库

相当于拿着备份集复制数据库
在本地建立另一个数据库recoverorcl,建立一个表,0级备份,然后dbca删除库,进行恢复
   RMAN> connect target sys/recoverorcl@recoverorcl
   RMAN> backup database
   恢复过程:
  首先建立一个sid相同的数据库
C:\Users\Administrator>set oracle_sid=recoverorcl
C:\Users\Administrator>rman target / nocatalog
RMAN> startup nomount;
RMAN>restore controlfile from 'D:\db\oracle\product\10.2.0\flash_recovery_area\RECOVERO\BACKUPSET\2013_04_03\O1_MF_NCSNF_TAG20130403T172007_8OQX5OB2_.BKP'
RMAN>mount database;
RMAN> recover database;
ORA-19698: E:\RECOVERDATA\RECOVERO\REDO01.LOG 来自不同数据库: id=3812385722, db
name=RECOVERO?
删除当前在线redo log文件,redo1,redo2和redo3
RMAN> recover database;
RMAN-06094: 数据文件1必须重新存储
RMAN> restore datafile 1;
RMAN>  alter database open resetlogs;
ORA-01152: 文件 1 没有从过旧的备份中恢复
ORA-01110: 数据文件 1: 'E:\RECOVERDATA\RECOVERO\SYSTEM01.DBF'
RMAN> restore database;
RMAN>  alter database open resetlogs;
ORA-01152: 文件 1 没有从过旧的备份中恢复
ORA-01110: 数据文件 1: 'E:\RECOVERDATA\RECOVERO\SYSTEM01.DBF'
RMAN> restore datafile 1;
RMAN> recover database;
RMAN-03002: recover 命令 (在 04/04/2013 00:06:40 上) 失败
RMAN-06054: 介质恢复正请求未知的日志: 线程 1 seq 4 lowscn 566500
RMAN>  alter database open resetlogs;
数据库已打开

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle RMAN恢复是一种强大的工具,用于恢复数据库到损坏的状态。它提供了一套丰富的功能,可以从备份中恢复数据文件、控制文件和日志文件。 首先,我们需要创建一个有效的RMAN备份。可以使用RMAN备份整个数据库或只备份指定的数据文件、控制文件和日志文件。 在恢复过程中,我们可以使用几种不同的恢复策略。完全恢复将数据库恢复到最新的可用备份,然后应用所有丢失的日志文件。部分恢复可以用于恢复单个表空间或数据文件。 在进行恢复之前,我们需要确保数据库处于彻底关闭状态。然后,我们可以使用RMAN进行恢复。可以通过启动RMAN工具、连接到目标数据库并执行所需的恢复操作来完成。 恢复过程中的一些重要术语包括“恢复目标”、“恢复窗口”和“重做应用”。恢复目标是指正在进行恢复操作的数据库,恢复窗口是可以恢复到其中的时间范围,而重做应用是指将丢失的或损坏的数据应用到数据库中。 RMAN可以自动执行备份集的恢复操作,或者我们可以手动指定要恢复的备份集。完成恢复后,我们可以打开数据库并验证数据的完整性。 总而言之,Oracle RMAN是一种强大的工具,可以为数据库提供高效的恢复解决方案。它提供了多种恢复策略,可以根据需要选择合适的方法。使用RMAN进行恢复操作需要一些准备工作和理解,但它可以帮助我们迅速恢复数据库并保障数据的完整性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值