Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2625010
  • 博文数量: 323
  • 博客积分: 10211
  • 博客等级: 上将
  • 技术积分: 4934
  • 用 户 组: 普通用户
  • 注册时间: 2006-08-27 14:56
文章分类

全部博文(323)

文章存档

2012年(5)

2011年(3)

2010年(6)

2009年(140)

2008年(169)

分类: Oracle

2009-03-24 11:36:55

1.单条命令"backup as copy"进行全数据库镜像拷贝备份:
 
RMAN> run {
2> backup as copy tag "sjh090323copy" database;
3> }
启动 backup 于 23-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=145 devtype=DISK
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00001 name=E:\ORACLE\ORASJH\SYSTEM01.DBF
输出文件名 = C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORASJH_I-2615173674_T
S-SYSTEM_FNO-1_0TKAL2EA 标记 = SJH090323COPY recid = 3 时间戳 = 682265055
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:25
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00002 name=E:\ORACLE\ORASJH\UNDOTBS01.DBF
输出文件名 = C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORASJH_I-2615173674_T
S-UNDOTBS1_FNO-2_0UKAL2F3 标记 = SJH090323COPY recid = 4 时间戳 = 682265073
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:15
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00003 name=E:\ORACLE\ORASJH\SYSAUX01.DBF
输出文件名 = C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORASJH_I-2615173674_T
S-SYSAUX_FNO-3_0VKAL2FI 标记 = SJH090323COPY recid = 5 时间戳 = 682265089
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:16
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00004 name=E:\ORACLE\ORASJH\USERS01.DBF
输出文件名 = C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORASJH_I-2615173674_T
S-USERS_FNO-4_10KAL2G2 标记 = SJH090323COPY recid = 6 时间戳 = 682265091
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:03
通道 ORA_DISK_1: 启动数据文件副本
输入数据文件 fno=00005 name=E:\ORACLE\ORASJH\SJH.DBF
输出文件名 = C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORASJH_I-2615173674_T
S-SJH_FNO-5_11KAL2G5 标记 = SJH090323COPY recid = 7 时间戳 = 682265094
通道 ORA_DISK_1: 数据文件复制完毕, 经过时间: 00:00:01
完成 backup 于 23-3月 -09
启动 Control File and SPFILE Autobackup 于 23-3月 -09
段 handle=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\C-2615173674-20090323-01 commen
t=NONE
完成 Control File and SPFILE Autobackup 于 23-3月 -09

--默认备份到database目录下,也可以指定备份路径和格式:

RMAN> run {
2> backup format 'E:\oracle\rman_backup\full%u_%s_%p' as copy tag 'sjh090323' da
tabase;
3> }

当你发出一个RESTORE命令时,缺省的RMAN恢复一个数据文件或者控制文件的镜像拷贝到原来的位置,镜像拷贝优于备份级被使用,因为使用备份级进行恢复会有额外的开销。并且,如果你需要使用镜像拷贝恢复数据文件或者控制文件,你无需把文件COPY到原来位置,RMAN的SWITCH命令可以通知数据库使用当前位置的文件,这类似于ALTER DATABASE RENAME FILE命令的功能。举个例子:
 
将数据文件5恢复到不同的位置:
 
首先看一下数据文件的分布:
SQL> select file_id,file_name from dba_data_files;
   FILE_ID
----------
FILE_NAME
---------------------------------------------------------------------
         1
E:\ORACLE\ORASJH\SYSTEM01.DBF
         2
E:\ORACLE\ORASJH\UNDOTBS01.DBF
         3
E:\ORACLE\ORASJH\SYSAUX01.DBF

   FILE_ID
----------
FILE_NAME
---------------------------------------------------------------------
         4
E:\ORACLE\ORASJH\USERS01.DBF
         5
E:\ORACLE\ORASJH\SJH.DBF
 
--shutdown数据库将E:\ORACLE\ORASJH\SJH.DBF改名。
 
E:\oracle\rman_scripts>rman catalog target
恢复管理器: Release 10.2.0.1.0 - Production on 星期一 3月 23 14:28:19 2009
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
已连接到目标数据库 (未启动)
连接到恢复目录数据库
RMAN> startup mount;
Oracle 实例已启动
数据库已装载
系统全局区域总计     167772160 字节
Fixed Size                     1247876 字节
Variable Size                 71304572 字节
Database Buffers              88080384 字节
Redo Buffers                   7139328 字节
RMAN> run {
2> set newname for datafile 5 to 'E:\oracle\SJH.DBF';
3> restore datafile 5;
4> switch datafile all;
5> recover datafile 5;
6> }
正在执行命令: SET NEWNAME
启动 restore 于 23-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 正在恢复数据文件00005
输入数据文件副本 recid=12 stamp=682265538 文件名=E:\ORACLE\RMAN_BACKUP\FULL17KAL
2U2_39_1
数据文件 00005 的恢复目标: E:\ORACLE\SJH.DBF
通道 ORA_DISK_1: 已复制数据文件 00005 的数据文件副本
输出文件名=E:\ORACLE\SJH.DBF recid=13 stamp=682266651
完成 restore 于 23-3月 -09
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=14 stamp=682266653 文件名=E:\ORACLE\SJH.DBF
正在启动全部恢复目录的 resync
完成全部 resync
启动 recover 于 23-3月 -09
使用通道 ORA_DISK_1
正在开始介质的恢复
介质恢复完成, 用时: 00:00:03
完成 recover 于 23-3月 -09
RMAN> alter database open;
数据库已打开
 

2.Oracle10g备份集压缩特征:
 
在备份命令里显示指定压缩选项:
BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG;
--仅对数据文件1压缩备份
BACKUP AS COMPRESSED BACKUPSET DATAFILE 1,5;
也可以配置RMAN指定压缩选项:
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO COMPRESSED BACKUPSET;
但是压缩备份会消耗更多的资源以及时间。
以下是测试过程:
 
压缩备份:
RMAN> BACKUP format 'E:\oracle\rman_backup\full%u_%s_%p' AS COMPRESSED BACKUPSET
 DATAFILE 1;
启动 backup 于 23-3月 -09
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动压缩的全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=E:\ORACLE\ORASJH\SYSTEM01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 23-3月 -09
通道 ORA_DISK_1: 已完成段 1 于 23-3月 -09
段句柄=E:\ORACLE\RMAN_BACKUP\FULL19KAL4VL_41_1 标记=TAG20090323T144717 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:16
完成 backup 于 23-3月 -09
启动 Control File and SPFILE Autobackup 于 23-3月 -09
段 handle=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\C-2615173674-20090323-03 commen
t=NONE
完成 Control File and SPFILE Autobackup 于 23-3月 -09
 
--16s完成备份。
 
RMAN> BACKUP format 'E:\oracle\rman_backup\full%u_%s_%p' DATAFILE 1;
启动 backup 于 23-3月 -09
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=156 devtype=DISK
通道 ORA_DISK_1: 启动全部数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件 fno=00001 name=E:\ORACLE\ORASJH\SYSTEM01.DBF
通道 ORA_DISK_1: 正在启动段 1 于 23-3月 -09
通道 ORA_DISK_1: 已完成段 1 于 23-3月 -09
段句柄=E:\ORACLE\RMAN_BACKUP\FULL1IKAL5SI_50_1 标记=TAG20090323T150242 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:25
完成 backup 于 23-3月 -09
 
--25s完成备份。
 
--这个实验比较奇怪,采用压缩备份集的选项反而备份的时间变短。我采用全库的测试结果也是一样的。
不知道有没有朋友遇到过这种现象?
 
3.Block Change Tracking:

Block chage tracking是Oracle10g的一个新特性,Block change tracking进程记录自从上一次备份以来数据块的变化,并把这些信息记录在跟踪文件中。RMAN使用这个文件判断增量备份中需要备份的变更数据。这极大的促进了备份性能,RMAN可以不再扫描整个文件以查找变更数据。为此Oracle引入了一个新的后台进程,CTWR(Change Tracking Writer),用于记录变化的块并将变化写入相应的日志文件中。
 
SQL> select filename,status,bytes from v$block_change_tracking;
FILENAME
---------------------------------------------------------------------
STATUS          BYTES
---------- ----------
DISABLED
 
--这个选项是关闭的。
 
SQL> alter database enable block change tracking using file 'e:\oracle\trace.log
';
数据库已更改。
 
--启用。
 
SQL>  select filename,status,bytes from v$block_change_tracking;
FILENAME
--------------------------------------------------------------------------------
STATUS          BYTES
---------- ----------
E:\ORACLE\TRACE.LOG
ENABLED      11599872
 
 

 
阅读(895) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~