My FAQ,最新最全的IT技术FAQ
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 未整理篇 | 技术讨论
  当前位置: > 程序开发 > 数据库开发 > Oracle
[整理]rman备份方式半功略
作者:未知 时间:2005-09-13 19:00 出处:ChinaUnix.net 责编:My FAQ
              摘要:[整理]rman备份方式半功略

为了可怜的上班期间上不了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

 rollingpig 回复于:2003-09-19 17:43:32
又一篇原创精华

 txfy 回复于:2003-09-19 17:49:52
hehe,我一直在努力,希望oracle的人气能比得上solaris,精华文章多些,最好什么工具呀,包呀,等等的使用方法都有相应的精华介绍。另外今天根据棉花糖提供的网址装了个spotlight,用了之后很兴奋,界面好漂亮呀!

另:
如果精华区的文章能构分类就好了,使用类的和介绍类的应该分开,我去找个东西要翻很长时间,不知道容不容易实现,呵呵!

 lb_20016 回复于:2003-09-20 11:27:25
再次感谢txfy兄的热心帮助,rollingpig,我以后上班时间都不能上MSN了,希望中午能向你们讨教。
rman恢复部分期待中.........
我们一直在努力!希望做到最好!
祝txfy的db2培训顺利!

 lb_20016 回复于:2003-09-20 11:28:46
周末习惯性加班中.........

 chinesehuman 回复于:2003-09-21 09:54:21
厉害 阿 ~~~~~~~~~~~~``

 text2002 回复于:2003-09-23 09:17:19
txfy兄,谢谢了,我正准备搞rman,等下要问你入门级的问题啊.

 jekky 回复于:2003-09-23 11:39:35
好资料啊!
感谢ing

 windofau 回复于:2003-09-23 13:20:53
用rman方式备份到磁带上的内容应该如何查看呢?

 cuixn 回复于:2003-09-23 17:59:46
用rman方式备份到磁带上的内容应该如何查看呢?请大虾们赐教!!

 text2002 回复于:2003-09-27 18:03:20
大老能不能给一个unix下的rman文档.
我对unix文件系统一点都不熟悉.

 yddll 回复于:2003-09-28 09:57:41
list backup

 tsingsong99 回复于:2003-11-30 11:43:16
xiexie!!

 angel518 回复于:2003-11-30 19:35:56
:em02:

 伯爵的Druid 回复于:2003-11-30 21:00:58
精华!thanks!
windows 下的rman 操作与solaris下的相同么。
不过要进行试验,我也是能在windows下进行。

 txfy 回复于:2003-12-01 09:17:34
没什么大区别,就是路径要改一下。

 cqcw 回复于:2004-05-27 12:08:48
正好,我正缺这个。正好,我正缺这个。正好,我正缺这个。

 jzstorm 回复于:2004-11-23 21:11:20
txfy 老大,什么时候发个恢复的步骤吧。。。


我就是没把怎么恢复搞懂。
谢谢。


非常的感谢!!!

致敬!!!!!!!!!!!!!!!!!!!!!!!!!

 伯爵的Druid 回复于:2005-01-09 20:25:09
阿,看到2003年我回的帖子了,怀念中.前两天还用google搜索到这片帖子,偶搜索的关键字是spotlight on oracle
Spotlight这个软件 花花绿绿的真是很好看,还可以drilldown,那位大侠给个使用心得上来

 ibmsoft 回复于:2005-03-21 16:45:34
作不学习中!

 jdb 回复于:2005-03-22 09:44:43
能再将讲讲rman的体系结构就更好了。

 txfy 回复于:2005-03-24 14:29:08
用list指令

 hrbym 回复于:2005-03-30 15:58:08
及时雨啊!辛苦辛苦!!!

 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 myfaq.com.cn All rights reserved. www.myfaq.com.cn 版权所有