Chinaunix首页 | 论坛 | 博客
  • 博客访问: 94747
  • 博文数量: 42
  • 博客积分: 2510
  • 博客等级: 少校
  • 技术积分: 480
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-16 13:39
文章分类

全部博文(42)

文章存档

2011年(1)

2010年(6)

2009年(35)

我的朋友

分类: Oracle

2009-12-18 15:20:20

系统环境:windows2003,oracle 10.1.0.2.0
 
利用dbms_resotre_backup包和rman来恢复丢失全部数据文件和控制文件的数据库,前提是rman做过一次数据库的全部备份
一、ORACLE数据库RMAN备份脚本设置
orafull.txt内容如下
run {
 allocate channel dev1 type disk;
 backup full tag 'dbfull' format 'e:\rmanbak\full%u_%p_%c' database;
 sql 'alter system archive log current';
 backup filesperset 3 archivelog all delete all input format 'e:\rmanbak\fullarc%u_%p_%c';
 release channel dev1;
 delete noprompt obsolete;
}
orafullbak.bat内容如下
copy outputfull1.log outputfull2.log
copy outputfull.log outputfull1.log
rman target cmdfile orafull.txt log outputfull.log
然后将这两个文件同时放在c:\rman目录下,该目录需要创建
二、在e盘创建一个用于备份的目录rmanbak,这个其实已经是上面的orafull.txt里进行了指定

三、RMAN备份设置
1、将数据库修改归档模式
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 12月 3 15:28:54 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn / as sysdba;
已连接。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
数据库装载完毕。
SQL>
SQL> archive log list;
数据库日志模式             非存档模式
自动存档             禁用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     4
当前日志序列           6
SQL> alter database archivelog;
数据库已更改。
SQL> archive log list;
数据库日志模式            存档模式
自动存档             启用
存档终点            USE_DB_RECOVERY_FILE_DEST
最早的联机日志序列     4
下一个存档日志序列   6
当前日志序列           6
SQL>
SQL> alter database open;
数据库已更改。
SQL> show parameter db;
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_16k_cache_size                    big integer 0
db_2k_cache_size                     big integer 0
db_32k_cache_size                    big integer 0
db_4k_cache_size                     big integer 0
db_8k_cache_size                     big integer 0
db_block_buffers                     integer     0
db_block_checking                    boolean     FALSE
db_block_checksum                    boolean     TRUE
db_block_size                        integer     8192
db_cache_advice                      string      ON
db_cache_size                        big integer 24M
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_file_dest                  string
db_create_online_log_dest_1          string
db_create_online_log_dest_2          string
db_create_online_log_dest_3          string
db_create_online_log_dest_4          string
db_create_online_log_dest_5          string
db_domain                            string
db_file_multiblock_read_count        integer     16
db_file_name_convert                 string
db_files                             integer     200
db_flashback_retention_target        integer     1440
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_keep_cache_size                   big integer 0
db_name                              string      fygl
db_recovery_file_dest                string      E:\oracle\product\10.1.0\flash
                                                 _recovery_area
db_recovery_file_dest_size           big integer 2G
db_recycle_cache_size                big integer 0
db_unique_name                       string      fygl
db_writer_processes                  integer     1
dbwr_io_slaves                       integer     0
rdbms_server_dn                      string
standby_archive_dest                 string      %ORACLE_HOME%\RDBMS
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
standby_file_management              string      MANUAL
2、修改系统设置数据归档文件恢复目录大小为50G
SQL> alter system set db_recovery_file_dest_size=50G;

3、修改rman参数
C:\Documents and Settings\Administrator>rman target /
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到目标数据库: FYGL (DBID=2271670400)
RMAN> show all;
正在使用目标数据库控制文件替代恢复目录
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # defau
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'E:\ORACLE\PRODUCT\10.1.0\DB_1\DATABAS
NCFFYGL.ORA'; # default
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
新的 RMAN 配置参数:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
已成功存储新的 RMAN 配置参数
RMAN> CONFIGURE BACKUP OPTIMIZATION ON;
新的 RMAN 配置参数:
CONFIGURE BACKUP OPTIMIZATION ON;
已成功存储新的 RMAN 配置参数
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
新的 RMAN 配置参数:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
已成功存储新的 RMAN 配置参数
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'E:\rmanbak\cf_%F';
新的 RMAN 配置参数:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'E:\rmanbak\cf_%F';
已成功存储新的 RMAN 配置参数
四、执行orafullbak.bat文件进行一次数据库的全备份
1、执行前查看rmanbak目录下没有任何数据
E:\rmanbak>dir
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\rmanbak 的目录
2009-12-18  09:27              .
2009-12-18  09:27              ..
               0 个文件              0 字节
               2 个目录  3,681,628,160 可用字节
2、执行后查看rmanbak目录下的数据如下
E:\rmanbak>dir
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\rmanbak 的目录
2009-12-18  09:31              .
2009-12-18  09:31              ..
2009-12-18  09:31         2,981,888 CF_C-2272174101-20091218-00
2009-12-18  09:31         2,981,888 CF_C-2272174101-20091218-01
2009-12-18  09:30       508,747,776 FULL0RL17147_1_1
2009-12-18  09:31        25,707,520 FULLARC0TL1716V_1_1
2009-12-18  09:31        20,037,632 FULLARC0UL17173_1_1
2009-12-18  09:31         4,792,832 FULLARC0VL17176_1_1
2009-12-18  09:31         1,051,136 FULLARC10L17178_1_1
               7 个文件    566,300,672 字节
               2 个目录  3,163,332,608 可用字节
五、模拟丢失控制文件,数据文件的恢复
1、将数据库先停掉shutdown immediate
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 09:34:46 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn /as sysdba;
已连接。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL>
2、先查看控制文件和带.dbf后缀的文件是存在的
SQL> host dir E:\oracle\product\10.1.0\oradata\fygl
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\oracle\product\10.1.0\oradata\fygl 的目录
2009-12-17  20:41              .
2009-12-17  20:41              ..
2009-12-18  09:36       104,865,792 CATALOGTBS.DBF
2009-12-18  09:36         2,899,968 CONTROL01.CTL
2009-12-18  09:36         2,899,968 CONTROL02.CTL
2009-12-18  09:36         2,899,968 CONTROL03.CTL
2009-12-18  09:36       209,723,392 FYGL.DBF
2009-12-18  09:36        10,486,272 REDO01.LOG
2009-12-18  09:36        10,486,272 REDO02.LOG
2009-12-18  09:36        10,486,272 REDO03.LOG
2009-12-18  09:36       241,180,672 SYSAUX01.DBF
2009-12-18  09:36       471,867,392 SYSTEM01.DBF
2009-12-18  09:36        31,465,472 UNDOTBS01.DBF
2009-12-18  09:36         5,251,072 USERS01.DBF
              12 个文件  1,104,512,512 字节
               2 个目录  3,163,242,496 可用字节
3、手动将3个控制文件和带dbf后缀文件全部删除后再来查看
SQL> host dir E:\oracle\product\10.1.0\oradata\fygl
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\oracle\product\10.1.0\oradata\fygl 的目录
2009-12-18  09:42              .
2009-12-18  09:42              ..
2009-12-18  09:36        10,486,272 REDO01.LOG
2009-12-18  09:36        10,486,272 REDO02.LOG
2009-12-18  09:36        10,486,272 REDO03.LOG
               3 个文件     31,458,816 字节
               2 个目录  3,162,857,472 可用字节

4、按如下操作来恢复控制文件和数据文件
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 09:43:14 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn /as sysdba;
已连接到空闲例程。
----现在发现由于丢失了上面的文件,导致只能连接到空闲进程
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
ORA-00205: ?????????, ??????, ???????
----正常启动发现有报错信息,说明无法正常启动
先来查看一下之前备份生成的文件,记住下面的CF_C-2272174101-20091218-01控制文件
备份信息
SQL> host dir E:\rmanbak
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\rmanbak 的目录
2009-12-18  09:31              .
2009-12-18  09:31              ..
2009-12-18  09:31         2,981,888 CF_C-2272174101-20091218-00  ---控制文件备份
2009-12-18  09:31         2,981,888 CF_C-2272174101-20091218-01
2009-12-18  09:30       508,747,776 FULL0RL17147_1_1             ---数据库备份
2009-12-18  09:31        25,707,520 FULLARC0TL1716V_1_1     ---归档文件备份
2009-12-18  09:31        20,037,632 FULLARC0UL17173_1_1
2009-12-18  09:31         4,792,832 FULLARC0VL17176_1_1
2009-12-18  09:31         1,051,136 FULLARC10L17178_1_1
               7 个文件    566,300,672 字节
               2 个目录  3,162,603,520 可用字节
开始恢复
强制启动数据库,但不装载
SQL> startup force nomount;
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
用dbms_backup_restore提取备份集的数据文件
SQL> declare
  2  devtype varchar2(256);
  3  done boolean;
  4  begin
  5  devtype:=sys.dbms_backup_restore.deviceAllocate(type=>'',ident=>'T1');
  6  sys.dbms_backup_restore.restoreSetDatafile;
  7  sys.dbms_backup_restore.restoreControlfileTo(cfname=>'E:\oracle\product\10.1.0\oradata\fygl\Control01.ctl');
  8  sys.dbms_backup_restore.restoreBackupPiece(done=>done,handle=>'E:\rmanbak\CF_C-2272174101-20091218-01', params=>null);
  9  sys.dbms_backup_restore.deviceDeallocate;
 10  end;
 11  /
PL/SQL 过程已成功完成。
然后查看会发现第一个控制文件已经被恢复
 E:\oracle\product\10.1.0\oradata\fygl 的目录
2009-12-18  10:36              .
2009-12-18  10:36              ..
2009-12-18  10:36         2,899,968 CONTROL01.CTL
2009-12-18  09:36        10,486,272 REDO01.LOG
2009-12-18  09:36        10,486,272 REDO02.LOG
2009-12-18  09:36        10,486,272 REDO03.LOG
               4 个文件     34,358,784 字节
               2 个目录  3,157,622,784 可用字节
依次复制其他两个控制文件步骤如下
SQL> host copy E:\oracle\product\10.1.0\oradata\fygl\CONTROL01.CTL E:\oracle\product\10.1.0\oradata\fygl\CONTROL02.CTL
已复制         1 个文件。
SQL> host copy E:\oracle\product\10.1.0\oradata\fygl\CONTROL01.CTL E:\oracle\product\10.1.0\oradata\fygl\CONTROL03.CTL
已复制         1 个文件。
SQL> quit
从 Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options 断开
六、利用rman来恢复下面的所有数据,因为此前已经用rman进行过全备份
C:\Documents and Settings\Administrator>rman target /
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到目标数据库: fygl (未装载)
RMAN> list backup;
正在使用目标数据库控制文件替代恢复目录
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of list command at 12/17/2009 20:39:43
ORA-01507: 未装载数据库
RMAN> alter database mount;
数据库已装载

RMAN>list backup;
...........
...........
2       Full    2M         DISK        00:00:01     09-12月-09
        BP 关键字: 2   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T155821
段名:E:\RMANBAK\CF_C-2272174101-20091209-01
  控制文件包括: Ckp SCN: 393607       Ckp 时间:09-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
3       Full    2M         DISK        00:00:01     09-12月-09
        BP 关键字: 3   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160300
段名:E:\RMANBAK\CF_C-2272174101-20091209-02
  控制文件包括: Ckp SCN: 393965       Ckp 时间:09-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
4       Full    461M       DISK        00:01:01     09-12月-09
        BP 关键字: 4   状态: AVAILABLE  已压缩: NO  标记: DBFULL
段名:E:\RMANBAK\FULL04L0G0VN_1_1
  备份集 4 中的数据文件列表
  文件 LV 类型 Ckp SCN    Ckp 时间   名称
  ---- -- ---- ---------- ---------- ----
  1       Full 394107     09-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SY
M01.DBF
  2       Full 394107     09-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\UN
BS01.DBF
  3       Full 394107     09-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SY
X01.DBF
  4       Full 394107     09-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\US
01.DBF
  5       Full 394107     09-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\FY
DBF
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
5       Full    2M         DISK        00:00:01     09-12月-09
        BP 关键字: 5   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160720
段名:E:\RMANBAK\CF_C-2272174101-20091209-03
  控制文件包括: Ckp SCN: 394156       Ckp 时间:09-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
6       19M        DISK        00:00:02     09-12月-09
        BP 关键字: 6   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160729
段名:E:\RMANBAK\FULLARC06L0G121_1_1
  备份集 6 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    8       371190     09-12月-09 377192     09-12月-09
  1    9       377192     09-12月-09 381079     09-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
7       19M        DISK        00:00:02     09-12月-09
        BP 关键字: 7   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160729
段名:E:\RMANBAK\FULLARC07L0G125_1_1
  备份集 7 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    10      381079     09-12月-09 386436     09-12月-09
  1    11      386436     09-12月-09 389705     09-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
8       12M        DISK        00:00:02     09-12月-09
        BP 关键字: 8   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160729
段名:E:\RMANBAK\FULLARC08L0G129_1_1
  备份集 8 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    12      389705     09-12月-09 393718     09-12月-09
  1    13      393718     09-12月-09 394165     09-12月-09
  1    14      394165     09-12月-09 394170     09-12月-09
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
9       Full    2M         DISK        00:00:01     09-12月-09
        BP 关键字: 9   状态: AVAILABLE  已压缩: NO  标记: TAG20091209T160741
段名:E:\RMANBAK\CF_C-2272174101-20091209-04
  控制文件包括: Ckp SCN: 394180       Ckp 时间:09-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
10      Full    2M         DISK        00:00:01     17-12月-09
        BP 关键字: 10   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T163155
段名:E:\RMANBAK\CF_C-2272174101-20091217-00
  控制文件包括: Ckp SCN: 553839       Ckp 时间:17-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
11      Full    482M       DISK        00:01:02     17-12月-09
        BP 关键字: 11   状态: AVAILABLE  已压缩: NO  标记: DBFULL
段名:E:\RMANBAK\FULL0BL1587G_1_1
  备份集 11 中的数据文件列表
  文件 LV 类型 Ckp SCN    Ckp 时间   名称
  ---- -- ---- ---------- ---------- ----
  1       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SY
M01.DBF
  2       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\UN
BS01.DBF
  3       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SY
X01.DBF
  4       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\US
01.DBF
  5       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\FY
DBF
  6       Full 558159     17-12月-09 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\CA
OGTBS.DBF
BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间
------- ---- -- ---------- ----------- ------------ ----------
12      Full    2M         DISK        00:00:01     17-12月-09
        BP 关键字: 12   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171945
段名:E:\RMANBAK\CF_C-2272174101-20091217-01
  控制文件包括: Ckp SCN: 558195       Ckp 时间:17-12月-09
  包含的 SPFILE: 修改时间: 09-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
13      28M        DISK        00:00:03     17-12月-09
        BP 关键字: 13   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0DL1589Q_1_1
  备份集 13 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    15      394170     09-12月-09 398522     09-12月-09
  1    16      398522     09-12月-09 401621     10-12月-09
  1    17      401621     10-12月-09 405972     10-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
14      28M        DISK        00:00:04     17-12月-09
        BP 关键字: 14   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0EL1589T_1_1
  备份集 14 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    18      405972     10-12月-09 414091     10-12月-09
  1    19      414091     10-12月-09 417557     10-12月-09
  1    20      417557     10-12月-09 418481     10-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
15      28M        DISK        00:00:03     17-12月-09
        BP 关键字: 15   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0FL158A2_1_1
  备份集 15 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    24      465862     11-12月-09 471668     11-12月-09
  1    25      471668     11-12月-09 476070     11-12月-09
  1    26      476070     11-12月-09 482647     11-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
16      28M        DISK        00:00:03     17-12月-09
        BP 关键字: 16   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0GL158A6_1_1
  备份集 16 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    27      482647     11-12月-09 485919     11-12月-09
  1    28      485919     11-12月-09 488879     11-12月-09
  1    29      488879     11-12月-09 493565     15-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
17      28M        DISK        00:00:04     17-12月-09
        BP 关键字: 17   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0HL158AA_1_1
  备份集 17 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    30      493565     15-12月-09 495233     15-12月-09
  1    31      495233     15-12月-09 499354     15-12月-09
  1    32      499354     15-12月-09 504444     15-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
18      28M        DISK        00:00:04     17-12月-09
        BP 关键字: 18   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0IL158AE_1_1
  备份集 18 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    33      504444     15-12月-09 506124     15-12月-09
  1    34      506124     15-12月-09 510473     17-12月-09
  1    35      510473     17-12月-09 513579     17-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
19      28M        DISK        00:00:03     17-12月-09
        BP 关键字: 19   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0JL158AJ_1_1
  备份集 19 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    36      513579     17-12月-09 514914     17-12月-09
  1    37      514914     17-12月-09 519004     17-12月-09
  1    38      519004     17-12月-09 522651     17-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
20      28M        DISK        00:00:04     17-12月-09
        BP 关键字: 20   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0KL158AN_1_1
  备份集 20 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    42      550643     17-12月-09 554325     17-12月-09
  1    43      554325     17-12月-09 555438     17-12月-09
  1    44      555438     17-12月-09 557417     17-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
21      19M        DISK        00:00:03     17-12月-09
        BP 关键字: 21   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0LL158AR_1_1
  备份集 21 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    39      522651     17-12月-09 525802     17-12月-09
  1    40      525802     17-12月-09 546056     17-12月-09
  1    41      546056     17-12月-09 550643     17-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
22      17M        DISK        00:00:02     17-12月-09
        BP 关键字: 22   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0ML158B0_1_1
  备份集 22 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    21      418481     10-12月-09 420486     10-12月-09
  1    22      420486     10-12月-09 442707     10-12月-09
  1    23      442707     10-12月-09 465862     11-12月-09
BS 关键字  大小       设备类型占用时间 完成时间
------- ---------- ----------- ------------ ----------
23      1M         DISK        00:00:01     17-12月-09
        BP 关键字: 23   状态: AVAILABLE  已压缩: NO  标记: TAG20091217T171954
段名:E:\RMANBAK\FULLARC0NL158B4_1_1
  备份集 23 中的已存档日志列表
  Thrd Seq     低 SCN    短时间     下一个 SCN   下一次
  ---- ------- ---------- ---------- ---------- ---------
  1    45      557417     17-12月-09 558207     17-12月-09
  1    46      558207     17-12月-09 558212     17-12月-09
RMAN> restore database;
启动 restore 于 17-12月-09
启动 implicit crosscheck backup 于 17-12月-09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=160 devtype=DISK
已交叉检验的 23 对象
完成 implicit crosscheck backup 于 17-12月-09
启动 implicit crosscheck copy 于 17-12月-09
使用通道 ORA_DISK_1
完成 implicit crosscheck copy 于 17-12月-09
搜索恢复区域中的所有文件
正在编制文件目录...
目录编制完毕
没有为文件编制目录
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SYSTEM01.DBF
正将数据文件00002恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\UNDOTBS01.DBF
正将数据文件00003恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\SYSAUX01.DBF
正将数据文件00004恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\USERS01.DBF
正将数据文件00005恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\FYGL.DBF
正将数据文件00006恢复到E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\CATALOGTBS.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = E:\RMANBAK\FULL0BL1587G_1_1 标记 = DBFULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 17-12月-09
RMAN> quit

恢复管理器完成。
再来看看那些数据文件已经都恢复过来
C:\Documents and Settings\Administrator>dir E:\oracle\product\10.1.0\oradata\
l
 驱动器 E 中的卷没有标签。
 卷的序列号是 CCFE-C8BC
 E:\oracle\product\10.1.0\oradata\fygl 的目录
2009-12-18  10:44              .
2009-12-18  10:44              ..
2009-12-18  10:44       104,865,792 CATALOGTBS.DBF
2009-12-18  10:53         2,899,968 CONTROL01.CTL
2009-12-18  10:53         2,899,968 CONTROL02.CTL
2009-12-18  10:53         2,899,968 CONTROL03.CTL
2009-12-18  10:45       209,723,392 FYGL.DBF
2009-12-18  09:36        10,486,272 REDO01.LOG
2009-12-18  09:36        10,486,272 REDO02.LOG
2009-12-18  09:36        10,486,272 REDO03.LOG
2009-12-18  10:45       241,180,672 SYSAUX01.DBF
2009-12-18  10:45       471,867,392 SYSTEM01.DBF
2009-12-18  10:44        31,465,472 UNDOTBS01.DBF
2009-12-18  10:44         5,251,072 USERS01.DBF
              12 个文件  1,104,512,512 字节
               2 个目录  2,086,076,416 可用字节
但这个时候还是无法正常打开数据库的,只能装载,如下
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 10:56:04 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn /as sysdba;
已连接。
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
数据库装载完毕。
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
必须执行下面步骤来完成介质的恢复
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期四 12月 17 20:44:53 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn /as sysdba;
已连接。
SQL> select thread#,sequence#,first_change# from v$log;
   THREAD#  SEQUENCE# FIRST_CHANGE#
---------- ---------- -------------
         1         47        558212
         1         45        557417
         1         46        558207
将数据文件恢复到失败点的状态
RMAN> recover database;
启动 recover 于 17-12月-09
使用通道 ORA_DISK_1
正在开始介质的恢复
存档日志线程 1 序列 45 已作为文件 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO02
OG 存在于磁盘上
存档日志线程 1 序列 46 已作为文件 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO03
OG 存在于磁盘上
存档日志线程 1 序列 47 已作为文件 E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO01
OG 存在于磁盘上
存档日志文件名 =E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO02.LOG 线程 =1 序列
5
存档日志文件名 =E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO03.LOG 线程 =1 序列
6
存档日志文件名 =E:\ORACLE\PRODUCT\10.1.0\ORADATA\FYGL\REDO01.LOG 线程 =1 序列
7
完成介质的恢复
完成 recover 于 17-12月-09
RMAN> alter database open resetlogs;
数据库已打开
七、测试数据库的正常连接,开启和基本查询
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 11:05:03 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn /as sysdba;
已连接。
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup;
ORACLE 例程已经启动。
Total System Global Area  171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
数据库装载完毕。
数据库已经打开。
C:\Documents and Settings\Administrator>sqlplus
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 11:06:31 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.

连接到:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select name from v$database;
NAME
---------
FYGL

C:\Documents and Settings\Administrator>rman target system/sys catalog rman/r
@fygl
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到目标数据库: FYGL (DBID=2272174101)
连接到恢复目录数据库
未安装恢复目录
八、这里补充一点创建,升级,删除恢复目录,注册数据库的步骤
1、创建用户,恢复目录表空间,上面已经创建过,这里省略,步骤如下
step1: 为恢复目录单独创建表空间catalog_tbs
SQL> create tablespace catalog_tbs datafile '/opt/oracle/oradata/mydb/catalog_tbs.dbf' size 200M uniform size 64k;
Tablespace created.
step2:创建恢复目录用户
SQL> create user rman identified by rman default tablespace catalog_tbs;
 
User created.
step3: 为恢复目录授予下列角色
SQL> grant connect,resource,recovery_catalog_owner to rman;
 
Grant succeeded.
2、C:\Documents and Settings\Administrator>rman catalog=rman/rman
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到恢复目录数据库
未安装恢复目录
RMAN> create catalog tablespace catalogtbs;
恢复目录已创建
RMAN> quit

恢复管理器完成。
C:\Documents and Settings\Administrator>rman catalog=rman/rman
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到恢复目录数据库
C:\Documents and Settings\Administrator>rman target system/sys catalog
恢复管理器: 版本10.1.0.2.0 - Production
Copyright (c) 1995, 2004, Oracle.  All rights reserved.
连接到目标数据库: FYGL (DBID=2272174101)
连接到恢复目录数据库
注册
RMAN> register database;
注册在恢复目录中的数据库
正在启动全部恢复目录的 resync
完成全部 resync
RMAN> upgrade catalog;
恢复目录所有者是RMAN
再输入一次 UPGRADE CATALOG 命令来确认目录升级
升级
RMAN> upgrade catalog;
恢复目录已升级到版本10.01.00
DBMS_RCVMAN 程序包升级为 10.01.00 版
DBMS_RCVCAT 程序包升级为 10.01.00 版
删除直接用drop datalog
RMAN> drop catalog;
恢复目录所有者是RMAN
再输入一次 DROP CATALOG 命令来确认目录删除
RMAN> drop catalog;
恢复目录已删除
注销数据库
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 10.1.0.2.0 - Production on 星期五 12月 18 11:20:50 2009
Copyright (c) 1982, 2004, Oracle.  All rights reserved.
SQL> conn rman/rman;
已连接。
SQL> select * from db;
    DB_KEY      DB_ID HIGH_CONF_RECID LAST_KCCDIVTS HIGH_IC_RECID CURR_DBINC
---------- ---------- --------------- ------------- ------------- ----------
         1 2272174101                     705927399             4

SQL> execute dbms_rcvcat.unregisterdatabase(1 , 2272174101);
PL/SQL 过程已成功完成。
阅读(784) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~