哈哈~~~~~
天苍苍野茫茫,三思终于又出场。
要问三思来干啥,来把RMAN讲一讲。
吃喝玩乐 间 学习,心得体会一箩筐。
不管结论对与错,先把过程来分享。
如有异议务必提,共同学习共提高。
en, 写的还挺顺口,俺自满啊~~~~~以后俺要是找不着干dba的工作,俺就到说不得大师的玄幻世界里当吟唱诗人去。
书归正传,在开始之前俺先强调一点, 通过RMAN的方式不论要备份还是要恢复,都必须先启动实例并加载数据库。 ( 有人在抗议,说这太初级了。俺说明一下,这是一个超级菜鸟摸爬滚打的心路历程,别说初级,连弱智的内容都有,所以俺友情提醒 大虾们务必开启初级内容过滤功能,以妨过多占用您宝贵时间,什么?你不会这一招,哎,我这里有秘制一目十行术,看你是大虾给你打8折,pm我吧 )
RMAN有两种操作方式,一种是类似dos,通过键盘操作的 命令方式 ,第二种是类似windows通过鼠标操作的 图形化界面方式 。图形化方式操作简单但也因此省略了一些具体过程,你可能成功操作但却不知道oracle究竟做了什么,怎么做的。俺立志也是要做名oracle大虾地,所以第二种方式完全不在考虑之列,最多只是参考。本篇后续内容所做的各项操作也都将以命令方式进行。
一、 连接本地数据库
通过rman连接本地数据库非常简单,以windows平台为例,进入到命令提示符界面:
C:\Documents and Settings\Administrator>set oracle_sid=jssweb
C:\Documents and Settings\Administrator>rman target /
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: JSSWEB (DBID=3391142503)
RMAN>
注:如果本地库只有一个实例,则不需要指定oracle_sid。Rman会自动连接到默认实例。
当然,你也可以先启动rman,然后再通过connect来连接目标数据库,如下:
C:\Documents and Settings\Administrator>set oracle_sid=jssweb
C:\Documents and Settings\Administrator>rman
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
RMAN> connect target /
连接到目标数据库: JSSWEB (DBID=3391142503)
RMAN>
二、 连接远程数据库
如果要连接的目标数据库是一个远程数据库,那么必须在建立连接时指定一个有效的网络服务名,同时你本地的tnsname.ora文件中也必须已经建立了该网络服务名的正确配置。示例如下:
C:\Documents and Settings\Administrator>rman target sys/ change_on_install @test db
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: TEST DB (DBID=22 2 0 2 62593)
RMAN>
当然,在这里你也可以同样先启动rman,再通过connect创建连接。具体示例与上类似,如果再做演示那这个环节不仅是弱,而是超弱,即使坚定如我也承受不了如此强烈的呕吐加鄙视的欲望,所以还是做罢吧。
三、 退出RMAN
哈哈,退出就太简单啦,敲个EXIT试试~~~~~~
还有一点各位新友也了解一下,对于以后写rman批处理会有帮助。在启动rman时可以指定日志输出,之前的示例中均没有指定,rman就将执行结果直接打印到屏幕了,如果我们以后写了一堆超长的rman批处理放在后台执行,可能会希望能够把执行日志记录下来备查,这个时候日志输出功能就用上了。这个功能也非常简单,如下:
- C:\Documents and Settings\Administrator>rman target / log d:\logs\rman_log.txt
rman 会将执行的结果直接输出到指定的d:\logs\rman_log.txt文件,一旦脚本放入后台执行出现问题,我们可以根据rman_log文件来辅助分析。