<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    本文作者: junsansi???? 轉載網址: http://www.5ienet.com/index.shtml
    ?
    ?
    第四部分附章(1)RMAN備份來創建? 2008.01.22

    ??? 如果你看過三思之前的幾個筆記系列,那么對于rman 想必已經非常熟悉,操作這個必然也不成問題,如果你還沒有看過,建議你先回去看看,然后再回來操作必然也沒有問題,如果你一定不準備看,沒關系,只要你嚴格按照實踐部分的步驟操作,我相信你一定也可以創建成功,操作應該也沒有問題,不過如果這樣你也覺著沒有問題,那么我要告訴你,可能就這是最大的問題:不知道做過什么,不知道該做什么,不知道為什么要做,一旦需求稍變,你甚至什么都不敢做。
    ?
    ??? 你什么都不用說,我知道,你還有問題,下面,我們先來看你下意識的第一個問題,為什么要用rman 創建物理standby?Oracle 告訴我們,有三點:
    ?
    ??? ● RMAN 創建standby 是通過primary 的備份,因此不會對primary 有任何的影響
    ??? ● RMAN 自動重命名OMF 的文件及路徑結構。
    ??? ● RMAN 修復歸檔日志文件并執行恢復以盡可能保證standby 與primary 數據一致相同。
    ?
    ??? 當然,我們也應該知道,上述這些都是形容詞,它只是為了強化意識,說到這里再多白話幾句,第一條呢還說的過去(雖然你不用rman 備份,使用其它方式的備份創建standby 也不會對primary 造成影響),第二條第三條就完全不靠譜了,并不是說它實現不了,恰恰相反,是它描述的太基礎了,形容手法有問題,我舉個例子,比如你在魚缸里看到一條魚,你會不會形容說哇這條魚能夠在水里游耶(死魚才不會在水里游呢)~~所以鑒別能力很重要,雖然這點我做的還很不夠,但是請首長們放心,我一定會努力的,我一定會加強的,我一定會堅持的!?。?br />
    ?
    ??? 回到這個問題上來,為什么要用rman 來創建物理standby 呢,在我看來如果說有優勢那么就一點:簡單!
    ??? 另外在這里三思更明確的指出,使用RMAN 的duplicate 命令只能直接創建物理standby,幸還是不幸?
    ?
    ?
    一、準備工作
    ?
    ??? 注意,在做任何操作之前,需要確認以下幾點:
    ?
    ??? ● 擁有至少一份通過rman 創建的備份;
    ??? ● 已經在primary 數據庫設置了所有相關的初始化參數;
    ??? ● 已經創建了standby 的初始化參數文件并配置了所有相關的初始化參數;
    ??? ● 已經配置了實例,NetService,Listener 等;
    ??? ● 啟動standby 實例到nomount 狀態;
    ?
    ??? 然后:
    ?
    1、通過rman 創建standby 的控制文件
    ?
    ??? 創建standby 的控制文件前面我們提到通過sql 命令,使用非常簡單,使用rman 命令創建與之同理,并且有兩種方式創建演示如下:

    ??? 1).RMAN> backup current controlfile for standby;
    ??? 2).RMAN> copy current controlfile for standby to 'e:\ora10g\oradata\jssrman\JSSRMAN01.CTL';


    ?
    2、定制standby 數據(日志)文件重命名策略
    ?
    ??? 為什么oracle 要提供重命名策略呢?因為dg 配置非常靈活,standby 甚至可以與primary 在同一個數據庫。
    ?
    ??? 什么時候需要應用重命名策略呢?如果standby 與primary 在同一臺服務器,或雖然不在同一臺服務器,但standby 的目錄結構與primary 不同,這兩種情況下,都必須應用重命名策略。如果standby 與primary 不在同一臺服務器,并且目錄結構相同,那就不需要應用重命名策略。
    ?
    ??? 如何應用重命名策略呢? 多種方式, 比如我們的老朋友初始化參數:db_file_name_convert,log_file_name_convert。還有rman 命令SET NEWNAME 或CONFIGURE AUXNAME
    等等,這些相關參數、命令的應用我們都在"Duplicate 復制數據庫"系列中介紹并應用過,后面還會再次提及。
    ?
    ?
    二、大致流程

    ??? 通常情況下,rman 創建完standby 之后不會自動執行recover。
    ?
    ??? 如果你執行duplicate 命令時沒有指定dorecover 參數,則rman 自動按照下面的步驟操作:
    ??? 1、RMAN 連接standby 與primary,及catalog(如果使用了的話);
    ??? 2、檢索catalog(nocatalog 的話是primary 數據庫的控制文件),確定primary 的備份以及standby 控制文件;
    ??? 3、如果使用介質恢復,RMAN 需要連接介質管理器以獲取所需備份數據;
    ??? 4、恢復standby 控制文件到standby 服務器;
    ??? 5、恢復primary 數據庫備份集中相應數據文件到standby 服務器;
    ??? 6、rman 自動將standby 數據庫打開到mount 狀態,不過不會自動打開redo 應用。
    ?
    ??? 如果執行duplicate 命令時指定了dorecover 參數,則rman 會在執行完第5 步后,接著執行下列的操作:
    ??? 7、在所有數據都restored 之后,rman 自動執行recovery,如果recovery 過程需要歸檔文件,但是這些文件又不在本地盤,則rman 會嘗試從備份中獲取。
    ??? 8、rman 執行recovery 之前,你可以通過指定time,scn,logfile sequence 來確定recovery 的內容,如果什么都不指定,則rman 一直recover 到最后一個歸檔文件。
    ??? 9、rman 自動將standby 數據庫打開到mount 狀態,同樣也不會自動打開redo 應用。
    ?
    ?
    三、方法及步驟

    ??? 基本上,可以分成二類:
    ?
    1、相同目錄結構的創建

    ??? duplicate 不同服務器相同目錄結構創建standby 的操作極為簡單, 你即不需要動用DB_FILE_NAME_CONVER/LOG_FILE_NAME_CONVERT之類參數,也不需要通過set newname之類命令,基本步驟如下:
    ?
    ??? 1) 確保已設置standby 服務器中所有相關的初始化參數。
    ??? 2) 確認備份集中文件scn 大于或等于控制文件中的scn。
    ??? 3) 如果需要,可以通過set 命令指定time,scn 或log 序號以執行不完全恢復。
    ??????? 例如:set until scn 152;
    ??????? 提示:注意如果有set,則set 與duplicate 必須在同一個run 命令塊中。
    ??? 4) 如果沒有配置自動分配通道的話,需要手工指定至少一條輔助通道。
    ??? 5) 務必指定nofilenamecheck 參數,我們之前"duplicate 復制數據庫"系列中就曾提到過,異機操作路徑相同還必需指定NOFILENAMECHECK。因為此處oracle 表現的很傻,它不知道你要恢復的路徑是在另一臺機器上,它只是認為要恢復到的路徑怎么跟目標數據庫表現的一樣呢?會不會是要覆蓋目標數據庫啊,為了避免這種情形,于是它就報錯。所以一旦異機恢復,并且路徑相同,那么你必須通過指定NOFILENAMECHECK 來避免oracle 的自動識別。
    ?
    ??? 例如腳本如下:

    ??? sql> duplicate target database for standby nofilenamecheck dorecover;


    ??? 注意,dorecover 并非是必須參數,如果你不指定的話,則duplicate 修復數據文件到服務器,并自動將standby 啟動到mount 狀態,不過并不會執行恢復操作。
    ?
    2、不同目錄結構的創建

    ??? 對于不同目錄結構創建standby(與是否同一臺服務器就基本無關了),你需要對數據文件和日志文件路徑重新定義,那你的選擇可就多多了喲:
    ?
    ??? a. 使用初始化參數重定義數據文件及日志文件
    ?
    ??? 關于db_file_name_convert 和log_file_name_convert 兩個初始化參數的本領和套路大家已經都很熟悉了,所以呢這里就不多做介紹。duplicate 命令在此處執行的時候與相同目錄結構執行也沒什么不同,所以,你可以認為,這是不同路徑下創建standby 中,最簡單的方式。
    ?
    ?? b. SET NEWNAME 命令重定義數據文件
    ?
    ??? 步驟如下:
    ??? ● 確保已設置standby 服務器中所有相關的初始化參數。
    ??? ● 確認備份集中文件scn 大于或等于控制文件中的scn。
    ??? ● 如果需要,可以通過set 命令指定time,scn 或log 序號以執行不完全恢復。
    ??? ● 如果沒有配置自動分配通道的話,需要手工指定至少一條輔助通道。
    ??? ● 通過set newname 命令為standby 數據文件指定新路徑
    ??? ● 執行duplicate 命令。
    ?
    ??? 例如,腳本如下:

    ??? RUN
    ??? {
    ??? # Set new file names for the datafiles
    ??? SET NEWNAME FOR DATAFILE 1 TO '?/dbs/standby_data_01.f';
    ??? SET NEWNAME FOR DATAFILE 2 TO '?/dbs/standby_data_02.f';
    ??? . . .
    ??? DUPLICATE TARGET DATABASE FOR STANDBY DORECOVER;
    ??? }

    ?
    ? ? c. CONFIGURE AUXNAME 命令重定義數據文件
    ?
    ??? 操作步驟皆與上同,不再詳述,不過需要注意的是CONFIGURE AUXNAME 命令的格式,并且configure 命令不能在run 塊中執行,例如腳本如下:

    ??? # set auxiliary names for the datafiles
    ??? CONFIGURE AUXNAME FOR DATAFILE 1 TO '/oracle/auxfiles/aux_1.f';
    ??? CONFIGURE AUXNAME FOR DATAFILE 2 TO '/oracle/auxfiles/aux_2.f';
    ??? . . .
    ??? CONFIGURE AUXNAME FOR DATAFILE n TO '/oracle/auxfiles/aux_n.f';
    ??? DUPLICATE TARGET DATABASE FOR STANDBY;

    ?
    ??? 最后,務必注意,configure auxname 命令執行是一直生效的,因此duplicate 執行完之后,推薦清除CONFIGURE AUXNAME。這樣就不會對未來的類似操作造成影響。
    ?
    ??? 例如:

    ??? CONFIGURE AUXNAME FOR DATAFILE 1 CLEAR;
    ??? CONFIGURE AUXNAME FOR DATAFILE 2 CLEAR;
    ??? . . .
    ??? CONFIGURE AUXNAME FOR DATAFILE n CLEAR;

    ?
    ?
    ??? 步驟和方法介紹完了,下面實際操作一把~~~~~~~~~~~~~
    ?
    ?
    ?
    posted on 2009-03-02 22:12 decode360 閱讀(217) 評論(0)  編輯  收藏 所屬分類: 10.DB_Tools
    主站蜘蛛池模板: 国产香蕉九九久久精品免费| 久久久久亚洲精品天堂久久久久久| 亚洲AV无码精品国产成人| 国产一区二区视频免费| 永久在线观看免费视频| 亚洲一卡2卡3卡4卡5卡6卡| 亚洲一级Av无码毛片久久精品| 最近中文字幕免费完整| 亚洲6080yy久久无码产自国产 | 日韩免费无码视频一区二区三区 | 成人免费网站视频www| 亚洲AV日韩精品久久久久| 成人免费视频国产| 99精品视频在线观看免费专区| 亚洲精品色在线网站| 久久青青成人亚洲精品| 国产免费一区二区三区VR| 3344免费播放观看视频| 特级毛片aaaa免费观看| 亚洲日本人成中文字幕| 国产亚洲A∨片在线观看| 永久免费看mv网站入口| 久久久久久国产精品免费无码| 全黄A免费一级毛片| 国产精品亚洲自在线播放页码 | 免费精品国自产拍在线播放| 亚洲春色另类小说| 亚洲国产成人一区二区三区| 免费看国产曰批40分钟| 手机在线看永久av片免费| 男人的天堂网免费网站| rh男男车车的车车免费网站 | 久久久久久久久久久免费精品| 亚洲熟女综合色一区二区三区| 久久精品国产亚洲av影院| 亚洲香蕉网久久综合影视| 啊v在线免费观看| 日本不卡在线观看免费v| 免费不卡视频一卡二卡| 91福利免费体验区观看区| 国产视频精品免费视频|