zoukankan      html  css  js  c++  java
  • 一次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


  • 相关阅读:
    VScode 修改中文字体
    missing KW_END at ')' near '<EOF>'
    SQL inner join, join, left join, right join, full outer join
    SQL字符替换函数translater, replace
    SQL COOKBOOK SQL经典实例代码 笔记第一章代码
    sqlcook sql经典实例 emp dept 创建语句
    dateutil 2.5.0 is the minimum required version python
    安装postgresql后找不到服务 postgresql service
    Postgres psql: 致命错误: 角色 "postgres" 不存在
    【西北师大-2108Java】第十六次作业成绩汇总
  • 原文地址:https://www.cnblogs.com/james1207/p/3327516.html
Copyright © 2011-2022 走看看