为了可怜的上班期间上不了MSN的LB__20016小弟,我做了个RMAN的全步骤给你作为没事时试验用,同时供大家分享和批评指正(一定要有错误指正出来免得教坏了小兄弟呵呵 :lol: )前面是介绍和指令,后面附上了我做的各个步骤从屏幕上拷贝下的东西,所以确实可行,
但是实在是累的头晕眼花,并没有把恢复部分做出来,下次有空再做,呵呵先偷个懒了!
------------------------------------------------------------------------------------------
一:RMAN是Oracle提供的一个数据库备份和恢复工具。
特点:
1)备份和恢复数据库、表空间、控制文件、数据文件和归档文件
2)校验备份数据集
3)通过备份检查损坏块
4)增量备份
5)脚本能力
6)备份和恢复获得更好的性能
7)结合OS一起实现自动备份
8)支持OPS
-------------------------------------------------------------------------------------------
二:RMAN的一些术语
Target Database被治理目的数据库
Recover Catalog存储备份信息的数据库用户
Channel在备份和恢复时使用的通道,文件或磁带
Backup set一次的备份操作输出的一个或多个文件
Backup piece备份集中的一个物理文件称为piece
Image copies数据库文件的一个拷贝
------------------------------------------------------------------------------------------
3:使用rman的预备
1:将要备份的数据库设成归档模式。(具体方法精华区里有具体介绍)
2:用dbca创建rman数据库(可以在本机也可以在其他机器)
3:windows在注册表,unix在.profile里修改参数:
NLS_DATE_LANGUAGE=AMERICAN
NLS_DATE_FORMAT=MON DD YYYY HH24:MI:SS
4:创建用户rman
create tablespace rman_ts datafile 'c:\oracle\oradata\rmants.dbf'
size 20m
default storage(
initial 100k
next 100k
pctincrease 0
)
create user rman identified by rman
default tablespace rman_ts
Temporary tablespace temp
quota unlimited on rman_ts
grant recovery_catalog_owner to rman;
grant connect,resource to rman;
------------------------------------------------------------------------------------------
4:开始使用
1)C:\>rman
RMAN>connect catalog rman/rman@rman
RMAN>create catalog tablespace rman_ts
RMAN>connect target system/manager
RMAN>register database;
RMAN>resync catalog;
2):--全部备份:
RMAN>Run {
2> Allocate channel c1 type disk;
3> Backup full filesperset 3
4> (database format 'e:\bk\full_%p%d.%s');}
3):--备份表空间USERS 注重表空间名大写。
RMAN>run{
2> allocate channel c1 type disk;
3> backup tablespace "USERS" filesperset 1
4> format 'e:\bk\users_%t%s.%p';
5> }
其它备份方式看我具体步骤,作了这么多眼花了。
-----------------------------------------------------------------------------------------
以下是我操作时从屏幕拷贝下来的内容
C:\>rman
RMAN>connect catalog rman/rman@rman
RMAN-06008:连接到恢复目录数据库
RMAN-06428:未安装恢复目录
RMAN>create catalog tablespace rman_ts
RMAN-06431:恢复目录已创建
RMAN>connect target system/manager
RMAN-06005:连接到目标数据库:TULIP (DBID=3789239814)
RMAN>register database;
RMAN-03022:正在编译命令:register
RMAN-03023:正在执行命令:register
RMAN-08006:注册在恢复目录中的数据库
RMAN-03023:正在执行命令:full resync
RMAN-08002:正在启动全部恢复目录的 resync
RMAN-08004:完成全部 resync
RMAN>resync catalog;
RMAN-03022:正在编译命令:resync
RMAN-03023:正在执行命令:resync
RMAN-08002:正在启动全部恢复目录的 resync
RMAN-08004:完成全部 resync
-------------------------------------------------------------------------------------------
--全部备份:
RMAN>Run {
2> Allocate channel c1 type disk;
3> Backup full filesperset 3
4> (database format 'e:\bk\full_%p%d.%s');}
RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=16 devtype=DISK
RMAN-03022:正在编译命令:backup
RMAN-03023:正在执行命令:backup
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=2 set_stamp=505150811 creation_time=9月 19 2003 15:40:11
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08522:输入数据文件 fno=00003 name=C:\ORACLE\ORADATA\TULIP\USERS01.DBF
RMAN-08522:输入数据文件 fno=00007 name=C:\ORACLE\ORADATA\TULIP\DR01.DBF
RMAN-08522:输入数据文件 fno=00004 name=C:\ORACLE\ORADATA\TULIP\TEMP01.DBF
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\FULL_1TULIP.2 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:26
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=3 set_stamp=505150837 creation_time=9月 19 2003 15:40:37
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08522:输入数据文件 fno=00001 name=C:\ORACLE\ORADATA\TULIP\SYSTEM01.DBF
RMAN-08011:备份集中包括当前控制文件
RMAN-08522:输入数据文件 fno=00006 name=C:\ORACLE\ORADATA\TULIP\INDX01.DBF
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\FULL_1TULIP.3 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:45
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=4 set_stamp=505150882 creation_time=9月 19 2003 15:41:22
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08522:输入数据文件 fno=00002 name=C:\ORACLE\ORADATA\TULIP\RBS01.DBF
RMAN-08522:输入数据文件 fno=00005 name=C:\ORACLE\ORADATA\TULIP\TOOLS01.DBF
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\FULL_1TULIP.4 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:46
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync
RMAN-08031:释放的通道:c1
------------------------------------------------------------------------------------------
--备份表空间USERS 注重表空间名大写。
RMAN>run{
2> allocate channel c1 type disk;
3> backup tablespace "USERS" filesperset 1
4> format 'e:\bk\users_%t%s.%p';
5> }
RMAN-08031:释放的通道:c1
RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=16 devtype=DISK
RMAN-03022:正在编译命令:backup
RMAN-03023:正在执行命令:backup
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=6 set_stamp=505151314 creation_time=9月 19 2003 15:48:34
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08522:输入数据文件 fno=00003 name=C:\ORACLE\ORADATA\TULIP\USERS01.DBF
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\USERS_5051513146.1 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:07
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync
RMAN-08031:释放的通道:c1
-------------------------------------------------------------------------------------------
--备份数据文件
RMAN>run{
2> allocate channel c1 type disk;
3> backup datafile 'c:\oracle\oradata\tulip\users01.dbf'
4> format 'e:\bk\users%t%s.%p';
5> }
RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=16 devtype=DISK
RMAN-03022:正在编译命令:backup
RMAN-03023:正在执行命令:backup
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=7 set_stamp=505151699 creation_time=9月 19 2003 15:54:59
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08522:输入数据文件 fno=00003 name=C:\ORACLE\ORADATA\TULIP\USERS01.DBF
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\USERS5051516997.1 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:07
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync
RMAN-08031:释放的通道:c1
------------------------------------------------------------------------------------------
--备份控制文件
RMAN>run{
2> allocate channel c1 type disk;
3> backup current controlfile format 'e:\bk\users%t%s.%p';
4> }
RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=16 devtype=DISK
RMAN-03022:正在编译命令:backup
RMAN-03023:正在执行命令:backup
RMAN-08008:通道 c1:正在启动 full 数据文件备份集
RMAN-08502:set_count=8 set_stamp=505151793 creation_time=9月 19 2003 15:56:33
RMAN-08010:通道 c1:正在指定备份集中的数据文件
RMAN-08011:备份集中包括当前控制文件
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\USERS5051517938.1 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:02
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync
RMAN-08031:释放的通道:c1
------------------------------------------------------------------------------------------
--备份归档文件
RMAN>run{
2> allocate channel c1 type disk;
3> backup archivelog all
4> format 'e:\bk\arc_%t%s.%p';}
RMAN-03022:正在编译命令:allocate
RMAN-03023:正在执行命令:allocate
RMAN-08030:分配的通道:c1
RMAN-08500:通道 c1:sid=16 devtype=DISK
RMAN-03022:正在编译命令:backup
RMAN-03023:正在执行命令:backup
RMAN-08009:通道 c1:正在启动归档日志备份集
RMAN-08502:set_count=9 set_stamp=505151987 creation_time=9月 19 2003 15:59:47
RMAN-08014:通道 c1:正在指定备份集中的存档日志
RMAN-08504:输入归档日志 thread=1 sequence=1457 recid=1 stamp=505150585
RMAN-08013:通道 c1:已创建 1 段
RMAN-08503:段 handle=E:\BK\ARC_5051519879.1 comment=NONE
RMAN-08525:备份集完成,经过时间:00:00:02
RMAN-03023:正在执行命令:partial resync
RMAN-08003:启动部分恢复目录的 resync
RMAN-08005:完成部分 resync
RMAN-08031:释放的通道:c1