通过rman backup as copy移动数据文件

  • 来源: 赛迪网 作者: 若水   2008-04-26/11:47
  • 通过rman备份的方式移动数据文件可以缩短传统拷贝datafile的时间,本文中我们将介绍一个非常方便的例子。

    具体示例如下:

     

    RMAN> CONNECT TARGET /
    
    连接到目标数据库: UTF (DBID=1000919928)
    
    RMAN> backup as copy tablespace 'TEST' format 'E:trans_tbsbaktt_copy_%U';
    
    启动 backup 于 11-1月 -07
    使用目标数据库控制文件替代恢复目录
    分配的通道: ORA_DISK_1
    通道 ORA_DISK_1: sid=272 devtype=DISK
    通道 ORA_DISK_1: 启动数据文件副本
    输入数据文件 fno=00005 name=E:ORACLEPRODUCT10.2.0ORADATAUTFTEST.DBF
    输出文件名 = E:TRANS_TBSBAKTT_COPY_DATA_D-UTF_I-1000919928_TS-TEST_FNO-5_0T
    9ACF 标记 = TAG20070111T235558 recid = 21 时间戳 = 611625360
    通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
    完成 backup 于 11-1月 -07
    
    启动 Control File and SPFILE Autobackup 于 11-1月 -07
    段 handle=E:ORACLEPRODUCT10.2.0FLASH_RECOVERY_AREAUTFAUTOBACKUP2007_01_
    O1_MF_S_611625360_2TDQJLH4_.BKP comment=NONE
    完成 Control File and SPFILE Autobackup 于 11-1月 -07
    
    RMAN> switch tablespace 'TEST' TO COPY;
    
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: switch to copy 命令 (在 01/11/2007 23:57:21 上) 失败
    RMAN-06572: 数据库已打开且数据文件 5 没有处于脱机状态
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 OFFLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 OFFLINE
    
    RMAN> switch tablespace 'TEST' TO COPY;
    
    数据文件 5 已切换成数据文件副本 "E:TRANS_TBSBAKTT_COPY_DATA_D-UTF_I-100091992
    8_TS-TEST_FNO-5_0TI79ACF"
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 onLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 onLINE
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03009: sql 命令 (default 通道上, 在 01/11/2007 23:59:27 上) 失败
    RMAN-11003: 在分析/执行 SQL 语句期间失败: ALTER DATABASE DATAFILE 5 onLINE
    ORA-01113: 文件 5 需要介质恢复
    ORA-01110: 数据文件 5: 'E:TRANS_TBSBAKTT_COPY_DATA_D-UTF_I-1000919928_TS-TEST
    _FNO-5_0TI79ACF'
    
    RMAN> recover datafile 5;
    
    启动 recover 于 11-1月 -07
    使用通道 ORA_DISK_1
    
    正在开始介质的恢复
    介质恢复完成, 用时: 00:00:04
    
    完成 recover 于 11-1月 -07
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 onLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 onLINE
    
    RMAN> backup as copy datafile 5 format 'E:trans_tbsbakTEST.DBF';
    
    启动 backup 于 12-1月 -07
    使用通道 ORA_DISK_1
    通道 ORA_DISK_1: 启动数据文件副本
    输入数据文件 fno=00005 name=E:TRANS_TBSBAKTT_COPY_DATA_D-UTF_I-1000919928_TS-
    TEST_FNO-5_0TI79ACF
    输出文件名 = E:TRANS_TBSBAKTEST.DBF 标记 = TAG20070112T000117 recid = 23 时间
    戳 = 611625678
    通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
    完成 backup 于 12-1月 -07
    
    RMAN> SWITCH DATAFILE 5 TO COPY;
    
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: switch to copy 命令 (在 01/12/2007 00:02:08 上) 失败
    RMAN-06572: 数据库已打开且数据文件 5 没有处于脱机状态
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 OFFLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 OFFLINE
    
    RMAN> SWITCH DATAFILE 5 TO COPY;
    
    数据文件 5 已切换成数据文件副本 "E:TRANS_TBSBAKTEST.DBF"
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 ONLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 ONLINE
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03009: sql 命令 (default 通道上, 在 01/12/2007 00:03:07 上) 失败
    RMAN-11003: 在分析/执行 SQL 语句期间失败: ALTER DATABASE DATAFILE 5 ONLINE
    ORA-01113: 文件 5 需要介质恢复
    ORA-01110: 数据文件 5: 'E:TRANS_TBSBAKTEST.DBF'
    
    RMAN> RECOVER DATAFILE 5;
    
    启动 recover 于 12-1月 -07
    使用通道 ORA_DISK_1
    
    正在开始介质的恢复
    介质恢复完成, 用时: 00:00:02
    
    完成 recover 于 12-1月 -07
    
    RMAN> SQL 'ALTER DATABASE DATAFILE 5 ONLINE';
    
    sql 语句: ALTER DATABASE DATAFILE 5 ONLINE
    
    RMAN> backup as copy tablespace 'TEST' FORMAT 'E:trans_tbsbaktest_tbs_copy_%U
    ';
    
    启动 backup 于 12-1月 -07
    使用通道 ORA_DISK_1
    通道 ORA_DISK_1: 启动数据文件副本
    输入数据文件 fno=00005 name=E:TRANS_TBSBAKTEST.DBF
    输出文件名 = E:TRANS_TBSBAKTEST_TBS_COPY_DATA_D-UTF_I-1000919928_TS-TEST_FNO-
    5_10I79BAT 标记 = TAG20070112T001212 recid = 25 时间戳 = 611626333
    通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
    完成 backup 于 12-1月 -07
    
    RMAN> SQL 'ALTER TABLESPACE TEST OFFLINE';
    
    sql 语句: ALTER TABLESPACE TEST OFFLINE
    
    RMAN> switch tablespace 'TEST' TO COPY;
    
    数据文件 5 已切换成数据文件副本 "E:TRANS_TBSBAKTEST_TBS_COPY_DATA_D-UTF_I-100
    0919928_TS-TEST_FNO-5_10I79BAT"
    
    RMAN> SQL 'ALTER TABLESPACE TEST ONLINE';
    
    sql 语句: ALTER TABLESPACE TEST ONLINE
    #p#分页标题#e#

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多