• 一次rman恢复的实验


    本文主要针对备份和恢复数据文件,具体rman知识点查阅我的另一篇文章:http://blog.csdn.net/perfect_db/article/details/8765022

    首先看看数据文件的情况:

    SQL> selectfile_name,file_id,tablespace_name from dba_data_files;

    FILE_NAME                                                      FILE_ID TABLESPACE_NAME

    ---------------------------------------------------------------------- ------------------------------

    E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF                     4 USERS

    E:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF                    3 SYSAUX

    E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF                   2 UNDOTBS1

    E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF                    1 SYSTEM

    E:ORACLEPRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF                   5 EXAMPLE

    E:RM_TAB.DBF                                                        6 RM_TABLESPACE

    E:RMAN.DBF                                                          7 RMAN_TAB

    已选择7行。

    C:Documents andSettingsAdministrator>rman target /

    恢复管理器: Release 11.2.0.1.0 - Production on 星期二 9月 17 15:54:092013

    Copyright (c) 1982, 2009, Oracle and/or itsaffiliates.  All rights reserved.

    连接到目标数据库: ORCL (DBID=1318810635)

    查看数据库已有备份情况:

    RMAN> list backup;

    备份集列表

    ===================

    BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间

    ------- ---- -- ---------- ----------------------- ----------

    145    Full    1.60G      DISK        00:03:35     02-9月 -13

           BP 关键字: 144   状态:AVAILABLE  已压缩: NO  标记:TAG20130902T160350

    段名:D:BACKUPFULL_ORCL_825091431_171.BAK

      备份集 145 中的数据文件列表

      文件 LV 类型 CkpSCN    Ckp 时间   名称

     ---- -- ---- ---------- ---------- ----

     1       Full 33823078237 02-9月 -13E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF

     2       Full 33823078237 02-9月 -13E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF

     3       Full 33823078237 02-9月 -13E:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF

     4       Full 33823078237 02-9月 -13E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF

     5       Full 33823078237 02-9月 -13E:ORACLEPRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF

     6       Full 33823078237 02-9月 -13E:RM_TAB.DBF

     7       Full 33823078237 02-9月 -13E:RMAN.DBF

    BS 关键字  大小       设备类型占用时间 完成时间

    ------- ---------- ----------- ----------------------

    150    698.25M    DISK        00:01:40     02-9月 -13

           BP 关键字: 149   状态:AVAILABLE  已压缩: NO  标记:TAG20130902T165210

    段名:D:BACKUPARCH_ORCL_20130902_176.BAK

      备份集 150 中的已存档日志列表

      线程序列     低 SCN    时间下限   下一个 SCN   下一次

     ---- ------- ---------- ---------- ---------- ---------

     1    42      33822522080 25-8月 -1333822546427 26-8月 -13

     1    43      33822546427 26-8月 -1333822572086 26-8月 -13

     1    44      33822572086 26-8月 -1333822577968 26-8月 -13

     1    45      33822577968 26-8月 -1333822597826 27-8月 -13

     1    46      33822597826 27-8月 -1333822632804 27-8月 -13

     1    47      33822632804 27-8月 -1333822708919 27-8月 -13

     1    48      33822708919 27-8月 -1333822741205 27-8月 -13

     1    49      33822741205 27-8月 -1333822776061 28-8月 -13

     1    50      33822776061 28-8月 -1333822806367 28-8月 -13

     1    51      33822806367 28-8月 -13 3382284917730-8月 -13

     1    52      33822849177 30-8月 -1333822855569 30-8月 -13

     1    53      33822855569 30-8月 -1333822890493 30-8月 -13

     1    54      33822890493 30-8月 -1333822914392 31-8月 -13

     1    55      33822914392 31-8月 -1333822923253 31-8月 -13

      1   56      33822923253 31-8月 -1333822946575 01-9月 -13

     1    57      33822946575 01-9月 -1333822953742 01-9月 -13

     1    58      33822953742 01-9月 -1333822956954 01-9月 -13

     1    59      33822956954 01-9月 -1333822972848 01-9月 -13

     1    60      33822972848 01-9月 -1333823003071 01-9月 -13

     1    61      33823003071 01-9月 -1333823038838 02-9月 -13

     1    62      33823038838 02-9月 -1333823060805 02-9月 -13

     1    63      33823060805 02-9月 -1333823080230 02-9月 -13

     1    64      33823080230 02-9月 -13 3382308026302-9月 -13

    BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间

    ------- ---- -- ---------- ----------------------- ----------

    154    Full    96.00K     DISK       00:00:01     17-9月 -13

           BP 关键字: 153   状态:AVAILABLE  已压缩: NO  标记:TAG20130917T160606

    段名:D:BACKUPORCL_180.BAK

      备份集 154 中的数据文件列表

      文件 LV 类型 CkpSCN    Ckp 时间   名称

     ---- -- ---- ---------- ---------- ----

     7       Full 33823344873 17-9月 -13E:RMAN.DBF

    BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间

    ------- ---- -- ---------- ----------------------- ----------

    155    Full    9.55M      DISK        00:00:03     17-9月 -13

           BP 关键字: 154   状态:AVAILABLE  已压缩: NO  标记:TAG20130917T160610

    段名:F:RMANBACKUPCONTROLFILEC-1318810635-20130917-00

      包含的 SPFILE: 修改时间: 17-9月 -13

      包括的控制文件: CkpSCN: 33823344928   Ckp 时间: 17-9月 -13

    RMAN> backup datafile 7;

    启动 backup 于 17-9月 -13

    使用通道 ORA_DISK_1

    通道 ORA_DISK_1: 正在启动全部数据文件备份集

    通道 ORA_DISK_1: 正在指定备份集内的数据文件

    输入数据文件: 文件号=00007 名称=E:RMAN.DBF

    通道 ORA_DISK_1: 正在启动段 1 于 17-9月 -13

    通道 ORA_DISK_1: 已完成段 1 于 17-9月 -13

    段句柄=D:BACKUPORCL_182.BAK 标记=TAG20130917T161421注释=NONE

    通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:01

    完成 backup 于 17-9月 -13

    启动 Control File and SPFILE Autobackup 于 17-9月 -13

    段 handle=F:RMANBACKUPCONTROLFILEC-1318810635-20130917-01comment=NONE

    完成 Control File and SPFILE Autobackup 于 17-9月 -13

    RMAN> report obsolete;

    RMAN 保留策略将应用于该命令

    将 RMAN 保留策略设置为冗余 1

    已废弃的备份和副本报表

    类型                 关键字 完成时间           文件名/句柄

    -------------------- ------------------------ --------------------

    备份集               154    17-9月 -13

    备份片段       153    17-9月 -13         D:BACKUPORCL_180.BAK

    备份集               155    17-9月 -13

    备份片段       154    17-9月 -13        F:RMANBACKUPCONTROLFILEC-1318810635-20130917-00

    说明之前与该次相同备份的备份集失效,包括一个自动备份的控制文件;而通过list  backup发现多了下列的备份内容:

    BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间

    ------- ---- -- ---------- ----------------------- ----------

    156    Full    96.00K     DISK       00:00:01     17-9月 -13

           BP 关键字: 155   状态:AVAILABLE  已压缩: NO  标记:TAG20130917T161421

    段名:D:BACKUPORCL_182.BAK

      备份集 156 中的数据文件列表

      文件 LV 类型 CkpSCN    Ckp 时间   名称

     ---- -- ---- ---------- ---------- ----

     7       Full 33823346326 17-9月 -13E:RMAN.DBF

    BS 关键字  类型 LV 大小       设备类型 经过时间 完成时间

    ------- ---- -- ---------- ----------------------- ----------

    157    Full    9.55M      DISK        00:00:04     17-9月 -13

           BP 关键字: 156   状态:AVAILABLE  已压缩: NO  标记:TAG20130917T161422

    段名:F:RMANBACKUPCONTROLFILEC-1318810635-20130917-01

      包含的 SPFILE: 修改时间: 17-9月 -13

      包括的控制文件: CkpSCN: 33823346333   Ckp 时间: 17-9月 -13

    顺便查看一下rman的配置情况

    RMAN> show all;

    db_unique_name 为 PRIMARY 的数据库的 RMAN 配置参数为:

    CONFIGURE RETENTION POLICY TO REDUNDANCY 1;# default

    CONFIGURE BACKUP OPTIMIZATION OFF; #default

    CONFIGURE DEFAULT DEVICE TYPE TO DISK; #default

    CONFIGURE CONTROLFILE AUTOBACKUP ON;

    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FORDEVICE TYPE DISK TO 'f: manbackupcontrolfile\%F';

    CONFIGURE DEVICE TYPE DISK PARALLELISM 1BACKUP TYPE TO BACKUPSET; # default

    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICETYPE DISK TO 1; # default

    CONFIGURE ARCHIVELOG BACKUP COPIES FORDEVICE TYPE DISK TO 1; # default

    CONFIGURE CHANNEL DEVICE TYPE DISKFORMAT   'd:ackup\%d_%s.bak';

    CONFIGURE MAXSETSIZE TO UNLIMITED; #default

    CONFIGURE ENCRYPTION FOR DATABASE OFF; #default

    CONFIGURE ENCRYPTION ALGORITHM 'AES128'; #default

    CONFIGURE COMPRESSION ALGORITHM 'BASIC' ASOF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default

    CONFIGURE ARCHIVELOG DELETION POLICY TONONE; # default

    CONFIGURE SNAPSHOT CONTROLFILE NAME TO'E:APPADMINISTRATORPRODUCT11.2.0DBHOME_1DATABASESNCFORCL.ORA'; # default

    SQL> shutdown immediate;

    数据库已经关闭。

    已经卸载数据库。

    ORACLE 例程已经关闭。

    手动把文件E:RMAN.DBF删除;再打开数据库

    SQL> startup

    ORACLE 例程已经启动。

    Total System Global Area  836976640 bytes

    Fixed Size                  1377812 bytes

    Variable Size             683674092 bytes

    Database Buffers          146800640 bytes

    Redo Buffers                5124096 bytes

    数据库装载完毕。

    ORA-01157: 无法标识/锁定数据文件 7 - 请参阅 DBWR 跟踪文件

    ORA-01110: 数据文件 7: 'E:RMAN.DBF'

    RMAN> restore datafile 7;

    RMAN-06900: 警告: 无法生成V$RMAN_STATUS 或 V$RMAN_OUTPUT 行

    RMAN-06901: 警告: 禁止更新V$RMAN_STATUS 和 V$RMAN_OUTPUT 行

    来自目标数据库的 ORACLE 错误:

    ORA-03113: 通信通道的文件结尾

    进程 ID: 6068

    会话 ID: 8 序列号: 5

    启动 restore 于 17-9月 -13

    RMAN-00571:===========================================================

    RMAN-00569: =============== ERROR MESSAGESTACK FOLLOWS ===============

    RMAN-00571:===========================================================

    说明刚才在sql窗口对数据库关闭了,此通道不能用,就退出重新登录

    RMAN> exit

    恢复管理器完成。

    C:Documents andSettingsAdministrator>rman target /

    恢复管理器: Release 11.2.0.1.0 - Production on 星期二 9月 17 16:28:142013

    Copyright (c) 1982, 2009, Oracle and/or itsaffiliates.  All rights reserved.

    已连接到目标数据库: ORCL (DBID=1318810635, 未打开)

    RMAN> restore datafile 7;

    启动 restore 于 17-9月 -13

    使用目标数据库控制文件替代恢复目录

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: SID=10 设备类型=DISK

    通道 ORA_DISK_1: 正在开始还原数据文件备份集

    通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

    通道 ORA_DISK_1: 将数据文件 00007 还原到 E:RMAN.DBF

    通道 ORA_DISK_1: 正在读取备份片段 D:BACKUPORCL_182.BAK

    通道 ORA_DISK_1: 段句柄 = D:BACKUPORCL_182.BAK 标记 = TAG20130917T161421

    通道 ORA_DISK_1: 已还原备份片段 1

    通道 ORA_DISK_1: 还原完成, 用时: 00:00:04

    完成 restore 于 17-9月 -13

    SQL> startup

    ORA-01081: 无法启动已在运行的 ORACLE - 请首先关闭它

    SQL> selectfile_name,file_id,tablespace_name from dba_data_files;

    select file_name,file_id,tablespace_namefrom dba_data_files

                                                  *

    第 1 行出现错误:

    ORA-01219: 数据库未打开: 仅允许在固定表/视图中查询

    SQL> alter database open;

    alter database open

    *

    第 1 行出现错误:

    ORA-01113: 文件 7 需要介质恢复

    ORA-01110: 数据文件 7: 'E:RMAN.DBF'

    SQL> recover datafile 7;

    完成介质恢复。

    SQL> alter database open;

    数据库已更改。

    SQL> selectfile_name,file_id,tablespace_name from dba_data_files;

    FILE_NAME                                                      FILE_ID TABLESPACE_NAME

    ---------------------------------------------------------------------- ------------------------------

    E:ORACLEPRODUCT10.2.0ORADATAORCLUSERS01.DBF                     4 USERS

    E:ORACLEPRODUCT10.2.0ORADATAORCLSYSAUX01.DBF                    3 SYSAUX

    E:ORACLEPRODUCT10.2.0ORADATAORCLUNDOTBS01.DBF                   2 UNDOTBS1

    E:ORACLEPRODUCT10.2.0ORADATAORCLSYSTEM01.DBF                    1 SYSTEM

    E:ORACLEPRODUCT10.2.0ORADATAORCLEXAMPLE01.DBF                   5 EXAMPLE

    E:RM_TAB.DBF                                                        6 RM_TABLESPACE

    E:RMAN.DBF                                                          7 RMAN_TAB

    已选择7行。

    OK说明已经恢复;这里有个问题,restore是从rman里执行,而recover是从sql*plus窗口中执行的;

    下面演示一下完全从sql窗口中执行和完全从rman 中执行;

    sql*plus窗口:

    SQL> shutdown immediate;

    数据库已经关闭。

    已经卸载数据库。

    ORACLE 例程已经关闭。

    手动把文件E:RMAN.DBF删除;再打开数据库

    SQL> startup

    ORACLE 例程已经启动。

    Total System Global Area  836976640 bytes

    Fixed Size                  1377812 bytes

    Variable Size             683674092 bytes

    Database Buffers          146800640 bytes

    Redo Buffers                5124096 bytes

    数据库装载完毕。

    ORA-01157: 无法标识/锁定数据文件 7 - 请参阅 DBWR 跟踪文件

    ORA-01110: 数据文件 7: 'E:RMAN.DBF'

    看来sql*plus窗口下不能使用restore命令

    SQL> restore datafile 7;

    SP2-0734: 未知的命令开头 "restoreda..." - 忽略了剩余的行。

    rman 窗口

    RMAN> restore datafile 7;

    启动 restore 于 17-9月 -13

    使用目标数据库控制文件替代恢复目录

    分配的通道: ORA_DISK_1

    通道 ORA_DISK_1: SID=10 设备类型=DISK

    通道 ORA_DISK_1: 正在开始还原数据文件备份集

    通道 ORA_DISK_1: 正在指定从备份集还原的数据文件

    通道 ORA_DISK_1: 将数据文件 00007 还原到 E:RMAN.DBF

    通道 ORA_DISK_1: 正在读取备份片段 D:BACKUPORCL_182.BAK

    通道 ORA_DISK_1: 段句柄 = D:BACKUPORCL_182.BAK 标记 =TAG20130917T161421

    通道 ORA_DISK_1: 已还原备份片段 1

    通道 ORA_DISK_1: 还原完成, 用时: 00:00:03

    完成 restore 于 17-9月 -13

    RMAN> recover datafile 7;

    启动 recover 于 17-9月 -13

    使用通道 ORA_DISK_1

    正在开始介质的恢复

    线程 1 序列 88 的归档日志已作为文件 F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000088823188844.ARC 存在于磁盘上

    线程 1 序列 89 的归档日志已作为文件 F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000089823188844.ARC 存在于磁盘上

    线程 1 序列 90 的归档日志已作为文件 F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000090823188844.ARC 存在于磁盘上

    线程 1 序列 91 的归档日志已作为文件 F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000091823188844.ARC 存在于磁盘上

    归档日志文件名=F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000088823188844.ARC 线程=1 序列=88

    归档日志文件名=F:FLASH_RECOVER_AREAORCLARCHIVELOG0010000000089823188844.ARC 线程=1 序列=89

    介质恢复完成, 用时: 00:00:08

    完成 recover 于 17-9月 -13

    看来rman窗口操作很清晰,很直观,能够看到从哪些归档文件中恢复;所以既然备份用的是rman,那么恢复也全部用rman比较好(restore只能在rman下操作,recover 还可以在sql*plus下操作,我想读取的应该是控制文件中的信息,如果用恢复目录不知道能用不?有待验证);


    -----------------------------------------------------------------------------------------------------------------------

    博文所有内容均属原创,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

    Blog:    http://blog.csdn.net/perfect_db

    Email:   perfect_db@sina.com

       QQ:   787266309


  • 相关阅读:
    替换掉一段 以 $ 开头 $ 结尾 的字符串
    react 中使用 codemirror2(在线代码编辑器)读取 yaml 文件
    第四篇:前端读取文件 | FileReader 对象及其属性
    umi 如何使用 Mock 模拟数据
    loading 动画 系列
    网站页面上标签页小图标的添加方式
    Linux tail命令
    Python实现字符串反转的方法
    Redis 配置远程访问
    消息队列
  • 原文地址:https://www.cnblogs.com/james1207/p/3327516.html
Copyright © 2020-2023  润新知