[三思笔记]一步一步学rman一、进入rman二、rman命令知多少三、rman备份演练初级篇四、rman备份演练进阶篇五、rman外传-基础资料篇1六、实战rman备份七、rman外传-基础资料篇2八、演练rman恢复九、实战rman恢复(1)丢失控制文件的恢复十、实战rman恢复(2)恢复到异机11、rman笔记之综述帖子评论请到:打包下载请到:哈哈~~~~~天苍苍野茫茫,三思终于又出场。要问三思来干啥,来把RMAN讲一讲。吃喝玩乐间学习,心得体会一箩筐。不管结论对与错,先把过程来分享。如有异议务必提,共同学习共提高。en,写的还挺顺口,俺自满啊~~~~~以后俺要是找不着干dba的工作,俺就到说不得大师的玄幻世界里当吟唱诗人去。书归正传,在开始之前俺先强调一点,通过RMAN的方式不论要备份还是要恢复,都必须先启动实例并加载数据库。(有人在抗议,说这太初级了。俺说明一下,这是一个超级菜鸟摸爬滚打的心路历程,别说初级,连弱智的内容都有,所以俺友情提醒大虾们务必开启初级内容过滤功能,以妨过多占用您宝贵时间,什么?你不会这一招,哎,我这里有秘制一目十行术,看你是大虾给你打8折,pm我吧)RMAN有两种操作方式,一种是类似dos,通过键盘操作的命令方式,第二种是类似windows通过鼠标操作的图形化界面方式。图形化方式操作简单但也因此省略了一些具体过程,你可能成功操作但却不知道oracle究竟做了什么,怎么做的。俺立志也是要做名oracle大虾地,所以第二种方式完全不在考虑之列,最多只是参考。本篇后续内容所做的各项操作也都将以命令方式进行。一、连接本地数据库通过rman连接本地数据库非常简单,以windows平台为例,进入到命令提示符界面:C:\DocumentsandSettings\Administratorsetoracle_sid=jsswebC:\DocumentsandSettings\Administratorrmantarget/恢复管理器:版本9.2.0.1.0-ProductionCopyright(c)1995,2002,OracleCorporation.Allrightsreserved.连接到目标数据库:JSSWEB(DBID=3391142503)RMAN注:如果本地库只有一个实例,则不需要指定oracle_sid。Rman会自动连接到默认实例。当然,你也可以先启动rman,然后再通过connect来连接目标数据库,如下:C:\DocumentsandSettings\Administratorsetoracle_sid=jsswebC:\DocumentsandSettings\Administratorrman恢复管理器:版本9.2.0.1.0-ProductionCopyright(c)1995,2002,OracleCorporation.Allrightsreserved.RMANconnecttarget/连接到目标数据库:JSSWEB(DBID=3391142503)RMAN二、连接远程数据库如果要连接的目标数据库是一个远程数据库,那么必须在建立连接时指定一个有效的网络服务名,同时你本地的tnsname.ora文件中也必须已经建立了该网络服务名的正确配置。示例如下:C:\DocumentsandSettings\Administratorrmantargetsys/change_on_install@testdb恢复管理器:版本9.2.0.1.0-ProductionCopyright(c)1995,2002,OracleCorporation.Allrightsreserved.连接到目标数据库:TESTDB(DBID=2220262593)RMAN当然,在这里你也可以同样先启动rman,再通过connect创建连接。具体示例与上类似,如果再做演示那这个环节不仅是弱,而是超弱,即使坚定如我也承受不了如此强烈的呕吐加鄙视的欲望,所以还是做罢吧。三、退出RMAN哈哈,退出就太简单啦,敲个EXIT试试~~~~~~还有一点各位新友也了解一下,对于以后写rman批处理会有帮助。在启动rman时可以指定日志输出,之前的示例中均没有指定,rman就将执行结果直接打印到屏幕了,如果我们以后写了一堆超长的rman批处理放在后台执行,可能会希望能够把执行日志记录下来备查,这个时候日志输出功能就用上了。这个功能也非常简单,如下:C:\DocumentsandSettings\Administratorrmantarget/logd:\logs\rman_log.txtRMANrman会将执行的结果直接输出到指定的d:\logs\rman_log.txt文件,一旦脚本放入后台执行出现问题,我们可以根据rman_log文件来辅助分析。一步一步学RMAN第二篇RMAN命令知多少2007.6.18菩萨蛮·命令知多少上一节讲了怎么进,这节开讲知多少内容虽不多,排列费思量。RMAN贵灵活,应用是根本。无须死硬记,策略定规则。RMAN非常有意思,做为一个专业的备份工具,它几乎考虑到了备份及恢复过程中可能遇到的各种操作,由此它也提供了各种各样的命令来为这些操作提供便利。一、启动、关闭数据库在RMAN中执行关闭和启动数据库的命令与SQL环境下一模一样。当然,在执行之前,你需要先连接到目标数据库,如例:C:\DocumentsandSettings\Administratorrmantarget/恢复管理器:版本9.2.0.1.0-ProductionCopyright(c)1995,2002,OracleCorporation.Allrightsreserved.连接到目标数据库:JSSWEB(DBID=3391142503)RMANshutdownimmediate正在使用目标数据库控制文件替代恢复目录数据库已关闭数据库已卸载Oracle例程已关闭RMANstartup已连接到目标数据库(未启动)Oracle例程已启动数据库已加载数据库已打开系统全局区域总计143727516字节FixedSize453532字节VariableSize109051904字节DatabaseBuffers33554432字节RedoBuffers667648字节RMAN当然,你也可以执行startupmount,然后再利用alterdatabaseopen命令打开数据库以及shutdownnormal,shutdownabort等。总之启动和关闭的命令跟SQL环境下相比就仨字儿:完全一模一样。二、执行操作系统命令Rman支持通过执行host命令暂时退出rman的命令提示符而进入到操作系统的命令环境,如下例:RMANhost;MicrosoftWindows[版本5.2.3790](C)版权所有1985-2003MicrosoftCorp.C:\DocumentsandSettings\Administratorcd\C:\exit主机命令完成RMAN执行完系统命令后可以再通过执行exit退出到rman命令提示符下。三、执行SQL语句在rman中执行sql语句稍嫌复杂。在RMAN的命令提示符后输入SQL命令,然后在一对单引号(双引号亦可)中输入要执行的SQL语句,例如:RMANSQL'ALTERSYSTEMARCHIVELOGALL';需要注意的一点是,rman中的sql环境不能执行SELECT语句,或者说执行不报错,但你也看不到结果。其实我们完全可以通过更取巧的方式来实现更强大的SQL操作,比如利用第二项介绍的内容,如下:RMANhost;MicrosoftWindows[版本5.2.3790](C)版权所有1985-2003MicrosoftCorp.C:\DocumentsandSettings\Administratorsqlplus/nologSQL*Plus:Release9.2.0.1.0-Productionon星期四6月2817:40:242007Copyright(c)1982,2002,OracleCorporation.Allrightsreserved.SQLconn/assysdba已连接。SQLselectsysdatefromdual;SYSDATE----------28-6月-07SQLexit从Oracle9iEnterpriseEditionRelease9.2.0.1.0-ProductionWiththePartitioning,OLAPandOracleDataMiningoptionsJServerRelease9.2.0.1.0-Production中断开C:\DocumentsandSettings\Administratorexit主机命令完成RMAN萝卜青菜各有所爱,大家是爱萝卜还是爱青菜啊,爱萝卜的请选第一种,爱青菜的请选第二种。我爱吃肉,我要找第三种出来~~~~~四、定义RMAN配置RMAN中具有一系列的默认配置,这些配置决定了备份和恢复时的一些选项(此节内容枯燥,眼神不好的同学请自觉跳过),比如:四、自动分配通道的配置;五、备份保留时间的配置;六、备份集大小的限制;七、启用或禁用备份优化功能;八、镜像复制的备份数量;九、是否将某个表空间排队在备份之外。修改配置是通过CONFIGURE命令,具体用法非常简单,但由于可供configure的配置非常之多,这里不做详细介绍,在后续实际演练章节中会有体现。当然,有心的朋友也可以通过google搜索一下,更有耐心的新友就等着看俺写的外传。五、显示RMAN默认配置Rman中可以利用show命令来显示当前的配置参数。例如,通过SHOWALL显示当前所有的配置。RMANshowall;RMAN配置参数为:CONFIGURERETENTIONPOLICYTORECOVERYWINDOWOF3DAYS;CONFIGUREBACKUPOPTIMIZATIONOFF;#defaultCONFIGUREDEFAULTDEVICETYPETODISK;#defaultCONFIGURECONTROLFILEAUTOBACKUPON;CONFIGURECONTROLFILEAUTOBACKUPFORMATFORDEVICETYPEDISKTO'd:/backup/%F';CONFIGUREDEVICETYPEDISKPARALLELISM1;#defaultCONFIGUREDATAFILEBACKUPCOPIESFORDEVICETYPEDISKTO1;#defaultCONFIGUREARCHIVELOGBACKUPCOPIESFORDEVICETYPEDISKTO1;#defaultCONFIGUREMAXSETSIZETOUNLIMITED;#defaultCONFIGURESNAPSHOTCONTROLFILENAMETO'F:\ORAHOME1\DATABASE\SNCFJSSWEB.ORA';#defaultRMAN注:配置项后面跟了#default的表示该项仍是初始配置,未被修改过。该命令使用也相当灵活,其后跟上不同的类型的配置参数,即可以显示不同类型的配置,如:SHOWCHANNEL;SHOWDEVICETYPE;SHOWDEFAULTDEVICETYPE;六、列出备份信息LIST命令用来查看通过RMAN生成的备份信息,照我看来,这个应用应该会非常少,大家了解即可(引申一下,不仅是list,俺基本认为备份这种操作,脚本一次定型,100年不许变,哪有DBA天天干备份恢复的,如果真是这样,