基于SCN的不完全恢复

来源:互联网 发布:矩阵的行列式加法运算 编辑:程序博客网 时间:2024/05/24 01:43

SQL> create table t(a number);

表已创建。


SQL> insert into t values (1);

已创建 1 行。

SQL> insert into t values (2);

已创建 1 行。

SQL> insert into t values (3);

已创建 1 行。

......

SQL> alter system switch logfile;

系统已更改。

SQL> commit;

提交完成。

SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            D:/backup/arc
最早的联机日志序列     11
下一个存档日志序列   13
当前日志序列           13
SQL> host
Microsoft Windows XP [版本 5.1.2600]
(C) 版权所有 1985-2001 Microsoft Corp.

C:/>rman target / nocatalog

恢复管理器: Release 10.2.0.1.0 - Production on 星期三 12月 10 17:43:54 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

连接到目标数据库: PUB (DBID=1781355794)
使用目标数据库控制文件替代恢复目录

RMAN> backup full format 'd:/backup/bak/full_%d_%T_%p_%U.bak' database  include current
 controlfile;

启动 backup 于 10-12月-08
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=151 devtype=DISK
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=D:/BACKUP/DB/PUB/SYSTEM01.DBF
输入数据文件 fno=00003 name=D:/BACKUP/DB/PUB/SYSAUX01.DBF
输入数据文件 fno=00002 name=D:/BACKUP/DB/PUB/UNDOTBS01.DBF
输入数据文件 fno=00004 name=D:/BACKUP/DB/PUB/USERS01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 10-12月-08
通道 ORA_DISK_1: 已完成段 1 于 10-12月-08
段句柄=D:/BACKUP/BAK/FULL_PUB_20081210_1_0IK1TVMC_1_1.BAK 标记=TAG20081210T174547 注释=
NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:02:16
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
通道 ORA_DISK_1: 正在启动段 1 于 10-12月-08
通道 ORA_DISK_1: 已完成段 1 于 10-12月-08
段句柄=D:/BACKUP/BAK/FULL_PUB_20081210_1_0JK1TVQK_1_1.BAK 标记=TAG20081210T174547 注释=
NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:11
完成 backup 于 10-12月-08

启动 Control File and SPFILE Autobackup 于 10-12月-08
段 handle=D:/BACKUP/ORACLE/PRODUCT/10.2.0/DB_1/DATABASE/C-1781355794-20081210-05 commen
t=NONE
完成 Control File and SPFILE Autobackup 于 10-12月-08

RMAN> sql 'alter system archive log current';

sql 语句: alter system archive log current

RMAN> exit


恢复管理器完成。

C:/>exit

SQL> select * from t;

         A
----------
         1
         2
         3
         4
         5
         6
         7
         8
         9

已选择9行。

SQL> insert into t  values (10);

已创建 1 行。

SQL> insert into t  values (11);

已创建 1 行。

SQL> commit;

提交完成。

SQL> select * from t;

         A
----------
         1
         2
         3
         4
         5
         6
         7
         8
         9
        10
        11

已选择11行。

SQL> alter sytem switch logfile;
alter sytem switch logfile
      *
第 1 行出现错误:
ORA-00940: 无效的 ALTER 命令


SQL> alter system switch logfile;

系统已更改。

SQL> alter system switch logfile;

系统已更改。

SQL> select current_scn from v$database;

CURRENT_SCN
-----------
     555003

SQL> drop table t;

表已删除。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area  289406976 bytes
Fixed Size                  1248600 bytes
Variable Size              79692456 bytes
Database Buffers          205520896 bytes
Redo Buffers                2945024 bytes
数据库装载完毕。
SQL> exit
从 Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options 断开

C:/>rman target / nocatalog

恢复管理器: Release 10.2.0.1.0 - Production on 星期三 12月 10 17:54:45 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

已连接到目标数据库: PUB (DBID=1781355794, 未打开)
使用目标数据库控制文件替代恢复目录

RMAN> run
2> {
3> restore database;
4> recover database until scn  555003;
5> sql 'alter database open resetlogs';
6> }

启动 restore 于 10-12月-08
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK

通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:/BACKUP/DB/PUB/SYSTEM01.DBF
正将数据文件00002恢复到D:/BACKUP/DB/PUB/UNDOTBS01.DBF
正将数据文件00003恢复到D:/BACKUP/DB/PUB/SYSAUX01.DBF
正将数据文件00004恢复到D:/BACKUP/DB/PUB/USERS01.DBF
通道 ORA_DISK_1: 正在读取备份段 D:/BACKUP/BAK/FULL_PUB_20081210_1_0IK1TVMC_1_1.BAK
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = D:/BACKUP/BAK/FULL_PUB_20081210_1_0IK1TVMC_1_1.BAK 标记 = TAG20081210T174547
通道 ORA_DISK_1: 恢复完成, 用时: 00:01:56
完成 restore 于 10-12月-08

启动 recover 于 10-12月-08
使用通道 ORA_DISK_1

正在开始介质的恢复

存档日志线程 1 序列 13 已作为文件 D:/BACKUP/ARC/ARC00013_0673115700.001 存在于磁盘上
存档日志线程 1 序列 14 已作为文件 D:/BACKUP/ARC/ARC00014_0673115700.001 存在于磁盘上
存档日志线程 1 序列 15 已作为文件 D:/BACKUP/ARC/ARC00015_0673115700.001 存在于磁盘上
存档日志文件名 =D:/BACKUP/ARC/ARC00013_0673115700.001 线程 =1 序列 =13
介质恢复完成, 用时: 00:00:06
完成 recover 于 10-12月-08

sql 语句: alter database open resetlogs

RMAN> exit


恢复管理器完成。

C:/>sqlplus /nolog

SQL*Plus: Release 10.2.0.1.0 - Production on 星期三 12月 10 17:59:13 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

SQL> conn / as sysdba
已连接。
SQL> select * from t;

         A
----------
         1
         2
         3
         4
         5
         6
         7
         8
         9
        10
        11

已选择11行。

SQL>

原创粉丝点击