先给数据库做一个全备。
E:\oracle\rman_scripts>rman catalog target
恢复管理器: Release 10.2.0.1.0 - Production on 星期五 3月 27 17:02:33 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到目标数据库: ORASJH (DBID=2615173674)
连接到恢复目录数据库
RMAN> @full_back_db.sql
RMAN> # start backup database
2>
3> run {
4> allocate channel c1 type disk;
5> backup format 'E:\oracle\rman_backup\full%u_%s_%p' database
6> plus archivelog format 'E:\oracle\rman_backup\archive_%d_%T_%s' delete all in
put;
7> release channel c1;
8> }
分配的通道: c1
通道 c1: sid=155 devtype=DISK
启动 backup 于 27-3月 -09
当前日志已存档
通道 c1: 正在启动存档日志备份集
通道 c1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =30 记录 ID=62 时间戳=682274533
输入存档日志线程 =1 序列 =31 记录 ID=63 时间戳=682621066
输入存档日志线程 =1 序列 =32 记录 ID=64 时间戳=682621374
通道 c1: 正在启动段 1 于 27-3月 -09
通道 c1: 已完成段 1 于 27-3月 -09
段句柄=E:\ORACLE\RMAN_BACKUP\ARCHIVE_ORASJH_20090327_60 标记=TAG20090327T170256
注释=NONE
通道 c1: 备份集已完成, 经过时间:00:00:04
通道 c1: 正在删除存档日志
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00030_0681243263.001 记录 ID=62 时间
戳 =682274533
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00031_0681243263.001 记录 ID=63 时间
戳 =682621066
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00032_0681243263.001 记录 ID=64 时间
戳 =682621374
完成 backup 于 27-3月 -09
启动 backup 于 27-3月 -09
通道 c1: 启动全部数据文件备份集
通道 c1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=E:\ORACLE\ORASJH\SYSTEM01.DBF
输入数据文件 fno=00002 name=E:\ORACLE\ORASJH\UNDOTBS01.DBF
输入数据文件 fno=00003 name=E:\ORACLE\ORASJH\SYSAUX01.DBF
输入数据文件 fno=00004 name=E:\ORACLE\ORASJH\USERS01.DBF
输入数据文件 fno=00005 name=E:\ORACLE\ORASJH\SJH.DBF
通道 c1: 正在启动段 1 于 27-3月 -09
通道 c1: 已完成段 1 于 27-3月 -09
段句柄=E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1 标记=TAG20090327T170302 注释=NONE
通道 c1: 备份集已完成, 经过时间:00:01:05
完成 backup 于 27-3月 -09
启动 backup 于 27-3月 -09
当前日志已存档
通道 c1: 正在启动存档日志备份集
通道 c1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =33 记录 ID=65 时间戳=682621449
通道 c1: 正在启动段 1 于 27-3月 -09
通道 c1: 已完成段 1 于 27-3月 -09
段句柄=E:\ORACLE\RMAN_BACKUP\ARCHIVE_ORASJH_20090327_62 标记=TAG20090327T170410
注释=NONE
通道 c1: 备份集已完成, 经过时间:00:00:02
通道 c1: 正在删除存档日志
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001 记录 ID=65 时间
戳 =682621449
完成 backup 于 27-3月 -09
启动 Control File and SPFILE Autobackup 于 27-3月 -09
段 handle=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\C-2615173674-20090327-00 commen
t=NONE
完成 Control File and SPFILE Autobackup 于 27-3月 -09
释放的通道: c1
RMAN>
RMAN> # end
2> **文件结尾**
SQL> desc test;
名称 是否为空? 类型
----------------------------------------- -------- -----------------------
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
PROFILE NOT NULL VARCHAR2(30)
INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30)
EXTERNAL_NAME VARCHAR2(4000)
SQL> select count(*) from test;
COUNT(*)
----------
11
SQL> update test set user_id=1 where username='SJH';
已更新 1 行。
SQL> COMMIT;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> set time on;
17:09:50 SQL> update test set user_id=
17:10:13 2 88 where username='SFX';
已更新 1 行。
17:10:42 SQL> commit;
提交完成。
17:10:49 SQL> alter system switch logfile;
系统已更改。
17:10:58 SQL> delete from test where username='SYS';
已删除 1 行。
17:11:27 SQL> COMMIT;
提交完成。
17:11:31 SQL> ALTER SYSTEM SWITCH LOGFILE;
系统已更改。
17:11:50 SQL> TRUNCATE TABLE TEST;
表被截断。
17:12:07 SQL> ALTER SYSTEM SWITCH LOGFILE;
系统已更改。
17:12:26 SQL>
17:14:38 SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS
---------- ---------- ---------- ---------- ---------- --- ----------------
FIRST_CHANGE# FIRST_TIME
------------- --------------
1 1 38 5144576 1 NO CURRENT
540258 27-3月 -09
2 1 36 5144576 1 YES ACTIVE
540150 27-3月 -09
3 1 37 5144576 1 YES ACTIVE
540219 27-3月 -09
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682621740 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682621858 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
289 682621910 1 36 540150 2009-3-27 1 540219 452870 2009-3-11 18:1
290 682621946 1 37 540219 2009-3-27 1 540258 452870 2009-3-11 18:1
10 rows selected
17:14:48 SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
--开始一次不完全恢复
E:\oracle\rman_scripts>rman catalog target
恢复管理器: Release 10.2.0.1.0 - Production on 星期五 3月 27 17:21:16 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接到目标数据库 (未启动)
连接到恢复目录数据库
RMAN> startup mount;
Oracle 实例已启动
数据库已装载
系统全局区域总计 167772160 字节
Fixed Size 1247876 字节
Variable Size 71304572 字节
Database Buffers 88080384 字节
Redo Buffers 7139328 字节
RMAN> run {
2> set until sequence 36 thread 1;
3> restore database;
4> recover database;
5> }
正在执行命令: SET until clause
启动 restore 于 27-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到E:\ORACLE\ORASJH\SYSTEM01.DBF
正将数据文件00002恢复到E:\ORACLE\ORASJH\UNDOTBS01.DBF
正将数据文件00003恢复到E:\ORACLE\ORASJH\SYSAUX01.DBF
正将数据文件00004恢复到E:\ORACLE\ORASJH\USERS01.DBF
正将数据文件00005恢复到E:\ORACLE\ORASJH\SJH.DBF
通道 ORA_DISK_1: 正在读取备份段 E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1 标记 = TAG20090327T170302
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:46
完成 restore 于 27-3月 -09
启动 recover 于 27-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 34 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 35 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.0
01 存在于磁盘上
通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复
通道 ORA_DISK_1: 正在恢复存档日志
存档日志线程 =1 序列=33
通道 ORA_DISK_1: 正在读取备份段 E:\ORACLE\RMAN_BACKUP\ARCHIVE_ORASJH_20090327_62
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\ORACLE\RMAN_BACKUP\ARCHIVE_ORASJH_20090327_62 标记 = TAG20090327T170
410
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:03
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001 线程 =1 序列 =3
3
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001 线程 =1 序列 =3
4
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001 线程 =1 序列 =3
5
介质恢复完成, 用时: 00:00:06
完成 recover 于 27-3月 -09
RMAN> alter database open resetlogs;
数据库已打开
在恢复目录中注册的数据库的新原型
正在启动全部恢复目录的 resync
完成全部 resync
RMAN>
C:\Documents and Settings\IS_SJH>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 3月 27 17:25:33 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn as sysdba
已连接。
SQL> select count(*) from test;
COUNT(*)
----------
11
--做一些DML操作。
SQL> delete from test where username like '%S%';
已删除8行。
SQL> commit;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL> update test set user_id=99 where username='DIP';
已更新 1 行。
SQL> COMMIT;
提交完成。
SQL> alter system switch logfile;
系统已更改。
SQL>
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682621740 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682621858 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
289 682621910 1 36 540150 2009-3-27 1 540219 452870 2009-3-11 18:1
290 682621946 1 37 540219 2009-3-27 1 540258 452870 2009-3-11 18:1
291 682622910 1 1 540151 2009-3-27 1 540433 540151 2009-3-27 17:2
292 682622954 1 2 540433 2009-3-27 1 540451 540151 2009-3-27 17:2
12 rows selected
--跨越resetlogs时间点做一次完全恢复。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
E:\oracle\rman_scripts>rman catalog target
恢复管理器: Release 10.2.0.1.0 - Production on 星期五 3月 27 17:32:15 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接到目标数据库 (未启动)
连接到恢复目录数据库
RMAN> startup mount;
Oracle 实例已启动
数据库已装载
系统全局区域总计 167772160 字节
Fixed Size 1247876 字节
Variable Size 71304572 字节
Database Buffers 88080384 字节
Redo Buffers 7139328 字节
RMAN> run {
2> restore database;
3> recover database;
4> }
启动 restore 于 27-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到E:\ORACLE\ORASJH\SYSTEM01.DBF
正将数据文件00002恢复到E:\ORACLE\ORASJH\UNDOTBS01.DBF
正将数据文件00003恢复到E:\ORACLE\ORASJH\SYSAUX01.DBF
正将数据文件00004恢复到E:\ORACLE\ORASJH\USERS01.DBF
正将数据文件00005恢复到E:\ORACLE\ORASJH\SJH.DBF
通道 ORA_DISK_1: 正在读取备份段 E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1 标记 = TAG20090327T170302
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:46
完成 restore 于 27-3月 -09
启动 recover 于 27-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 33 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 34 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 35 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 1 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682622698.00
1 存在于磁盘上
存档日志线程 1 序列 2 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682622698.00
1 存在于磁盘上
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001 线程 =1 序列 =3
3
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001 线程 =1 序列 =3
4
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001 线程 =1 序列 =3
5
介质恢复完成, 用时: 00:00:05
完成 recover 于 27-3月 -09
RMAN> alter database open;
数据库已打开
RMAN> exit
恢复管理器完成。
C:\Documents and Settings\IS_SJH>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期五 3月 27 17:34:50 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn as sysdba
已连接。
SQL> select username,user_id from test;
USERNAME USER_ID
------------------------------ ----------
MGMT_VIEW 29
OUTLN 11
DIP 99
--数据恢复完成。
OK,我们来尝试一下跨resetlogs时间点的不完全恢复。分两种情况:resetlogs之后时间点的恢复;resetlogs之前的时间点的恢复。
resetlogs之后时间点的恢复:
E:\oracle\rman_scripts>rman catalog target
恢复管理器: Release 10.2.0.1.0 - Production on 星期一 3月 30 15:53:30 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
已连接到目标数据库 (未启动)
连接到恢复目录数据库
RMAN> startup mount;
Oracle 实例已启动
数据库已装载
系统全局区域总计 167772160 字节
Fixed Size 1247876 字节
Variable Size 71304572 字节
Database Buffers 88080384 字节
Redo Buffers 7139328 字节
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682621740 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682621858 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
289 682621910 1 36 540150 2009-3-27 1 540219 452870 2009-3-11 18:1
290 682621946 1 37 540219 2009-3-27 1 540258 452870 2009-3-11 18:1
291 682622910 1 1 540151 2009-3-27 1 540433 540151 2009-3-27 17:2
292 682622954 1 2 540433 2009-3-27 1 540451 540151 2009-3-27 17:2
293 682628454 1 3 540451 2009-3-27 1 544754 540151 2009-3-27 17:2
294 682873160 1 4 544754 2009-3-27 1 565533 540151 2009-3-27 17:2
295 682875766 1 5 565533 2009-3-30 1 568244 540151 2009-3-27 17:2
15 rows selected
RMAN> run {
2> set until sequence 3 thread 1; --恢复到sequence 3
3> restore database;
4> recover database;
5> }
正在执行命令: SET until clause
启动 restore 于 30-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=155 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到E:\ORACLE\ORASJH\SYSTEM01.DBF
正将数据文件00002恢复到E:\ORACLE\ORASJH\UNDOTBS01.DBF
正将数据文件00003恢复到E:\ORACLE\ORASJH\SYSAUX01.DBF
正将数据文件00004恢复到E:\ORACLE\ORASJH\USERS01.DBF
正将数据文件00005恢复到E:\ORACLE\ORASJH\SJH.DBF
通道 ORA_DISK_1: 正在读取备份段 E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1 标记 = TAG20090327T170302
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:45
完成 restore 于 30-3月 -09
启动 recover 于 30-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 33 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 34 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 35 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 1 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682622698.00
1 存在于磁盘上
存档日志线程 1 序列 2 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682622698.00
1 存在于磁盘上
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001 线程 =1 序列 =3
3
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001 线程 =1 序列 =3
4
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001 线程 =1 序列 =3
5
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682622698.001 线程 =1 序列 =1
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682622698.001 线程 =1 序列 =2
介质恢复完成, 用时: 00:00:08
完成 recover 于 30-3月 -09
RMAN> alter database open;
SQL> alter system switch logfile;
System altered
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682621740 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682621858 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
289 682621910 1 36 540150 2009-3-27 1 540219 452870 2009-3-11 18:1
290 682621946 1 37 540219 2009-3-27 1 540258 452870 2009-3-11 18:1
291 682622910 1 1 540151 2009-3-27 1 540433 540151 2009-3-27 17:2
292 682622954 1 2 540433 2009-3-27 1 540451 540151 2009-3-27 17:2
293 682628454 1 3 540451 2009-3-27 1 544754 540151 2009-3-27 17:2
294 682873160 1 4 544754 2009-3-27 1 565533 540151 2009-3-27 17:2
295 682875766 1 5 565533 2009-3-30 1 568244 540151 2009-3-27 17:2
296 682876989 1 1 540452 2009-3-30 1 540835 540452 2009-3-30 16:0
16 rows selected
resetlog之前时间点的恢复:
RMAN> run {
2> set until sequence 36 thread 1;
3> restore database;
4> recover database;
5> }
正在执行命令: SET until clause
启动 restore 于 30-3月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到E:\ORACLE\ORASJH\SYSTEM01.DBF
正将数据文件00002恢复到E:\ORACLE\ORASJH\UNDOTBS01.DBF
正将数据文件00003恢复到E:\ORACLE\ORASJH\SYSAUX01.DBF
正将数据文件00004恢复到E:\ORACLE\ORASJH\USERS01.DBF
正将数据文件00005恢复到E:\ORACLE\ORASJH\SJH.DBF
通道 ORA_DISK_1: 正在读取备份段 E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\ORACLE\RMAN_BACKUP\FULL1TKAVUE6_61_1 标记 = TAG20090327T170302
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:46
完成 restore 于 30-3月 -09
启动 recover 于 30-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 33 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 34 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 35 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.0
01 存在于磁盘上
存档日志线程 1 序列 1 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682622698.00
1 存在于磁盘上
存档日志线程 1 序列 2 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682622698.00
1 存在于磁盘上
存档日志线程 1 序列 1 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682876851.00
1 存在于磁盘上
存档日志线程 1 序列 2 已作为文件 E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682876851.00
1 存在于磁盘上
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001 线程 =1 序列 =3
3
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001 线程 =1 序列 =3
4
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001 线程 =1 序列 =3
5
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682622698.001 线程 =1 序列 =1
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682622698.001 线程 =1 序列 =2
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00001_0682876851.001 线程 =1 序列 =1
存档日志文件名 =E:\ORACLE\ORASJH\ARCHIVE\ARC00002_0682876851.001 线程 =1 序列 =2
无法找到存档日志
存档日志线程 =1 序列=3
--无法恢复。要恢复resetlog时间点之前的数据需要原来的控制文件,而不是现在的控制文件。
RMAN> restore controlfile to 'c:\control.ctl' from 'C:\ORACLE\PRODUCT\10.2.0\DB_
1\DATABASE\C-2615173674-20090327-00';
启动 restore 于 30-3月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在复原控制文件
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:02
完成 restore 于 30-3月 -09
--用c:\control.ctl替代目前的控制文件,然后开始恢复。
C:\Documents and Settings\IS_SJH>sqlplus /nolog
SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 3月 30 17:10:08 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn as sysdba
已连接。
SQL> recover database using backup controlfile until cancel;
ORA-00279: 更改 539893 (在 03/27/2009 17:03:02 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001
ORA-00280: 更改 539893 (用于线程 1) 在序列 #33 中
指定日志: {=suggested | filename | AUTO | CANCEL}
ORA-00279: 更改 539926 (在 03/27/2009 17:04:08 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001
ORA-00280: 更改 539926 (用于线程 1) 在序列 #34 中
ORA-00278: 此恢复不再需要日志文件
'E:\ORACLE\ORASJH\ARCHIVE\ARC00033_0681243263.001'
指定日志: {=suggested | filename | AUTO | CANCEL}
ORA-00279: 更改 540091 (在 03/27/2009 17:09:00 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001
ORA-00280: 更改 540091 (用于线程 1) 在序列 #35 中
ORA-00278: 此恢复不再需要日志文件
'E:\ORACLE\ORASJH\ARCHIVE\ARC00034_0681243263.001'
指定日志: {=suggested | filename | AUTO | CANCEL}
ORA-00279: 更改 540150 (在 03/27/2009 17:10:58 生成) 对于线程 1 是必需的
ORA-00289: 建议: E:\ORACLE\ORASJH\ARCHIVE\ARC00036_0681243263.001
ORA-00280: 更改 540150 (用于线程 1) 在序列 #36 中
ORA-00278: 此恢复不再需要日志文件
'E:\ORACLE\ORASJH\ARCHIVE\ARC00035_0681243263.001'
指定日志: {=suggested | filename | AUTO | CANCEL}
cancel
介质恢复已取消。
SQL> alter database open resetlogs;
数据库已更改。
SQL>
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682881158 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682881209 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
8 rows selected
SQL> alter system switch logfile;
System altered
SQL> select * from v$log_history where recid > 280;
RECID STAMP THREAD# SEQUENCE# FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ---------- ---------- ---------- ------------- ----------- ------------ ----------------- --------------
281 682268917 1 28 529713 2009-3-23 1 529837 452870 2009-3-11 18:1
282 682268967 1 29 529837 2009-3-23 1 529872 452870 2009-3-11 18:1
283 682274532 1 30 529872 2009-3-23 1 534058 452870 2009-3-11 18:1
284 682621065 1 31 534058 2009-3-23 1 538483 452870 2009-3-11 18:1
285 682621373 1 32 538483 2009-3-27 1 539542 452870 2009-3-11 18:1
286 682621448 1 33 539542 2009-3-27 1 539926 452870 2009-3-11 18:1
287 682881158 1 34 539926 2009-3-27 1 540091 452870 2009-3-11 18:1
288 682881209 1 35 540091 2009-3-27 1 540150 452870 2009-3-11 18:1
289 682881873 1 1 540151 2009-3-30 1 540783 540151 2009-3-30 17:1
9 rows selected
SQL> select * from test;
USERNAME USER_ID PASSWORD ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE DEFAULT_TABLESPACE TEMPORARY_TABLESPACE CREATED PROFILE INITIAL_RSRC_CONSUMER_GROUP EXTERNAL_NAME
------------------------------ ---------- ------------------------------ -------------------------------- ----------- ----------- ------------------------------ ------------------------------ ----------- ------------------------------ ------------------------------ --------------------------------------------------------------------------------
SJH 1 D45FAA0558FBBB9D OPEN USERS TEMP 2009-2-20 1 DEFAULT DEFAULT_CONSUMER_GROUP
MGMT_VIEW 29 25F47C44E102E06A OPEN SYSTEM TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
DBSNMP 24 E066D214D5421CCC OPEN SYSAUX TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
SFX 88 C691D30B80DBB64D OPEN USERS TEMP 2009-2-20 1 DEFAULT DEFAULT_CONSUMER_GROUP
SYSMAN 27 447B729161192C24 OPEN SYSAUX TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
SYS 0 4DE42795E66117AE OPEN SYSTEM TEMP 2009-2-19 9 DEFAULT SYS_GROUP
SYSTEM 5 970BAA5B81930A40 OPEN SYSTEM TEMP 2009-2-19 9 DEFAULT SYS_GROUP
TSMSYS 21 3DF26A8B17D0F29F EXPIRED & LOCKED 2009-2-19 9 2009-2-19 9 USERS TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
OUTLN 11 4A3BA55E08595C81 EXPIRED & LOCKED 2009-2-19 9 2009-2-19 9 SYSTEM TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
DIP 19 CE4A36B8E06CA59C EXPIRED & LOCKED 2009-2-19 9 USERS TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
WMSYS 25 7C9BA362F8314299 EXPIRED & LOCKED 2009-2-19 9 2009-2-19 9 SYSAUX TEMP 2009-2-19 9 DEFAULT DEFAULT_CONSUMER_GROUP
11 rows selected
SQL>
--恢复完成。