Decode360's Blog

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

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
            397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
          本文作者: junsansi???? 轉載網址: http://www.5ienet.com/index.shtml
          ?
          ?
          第四部分Standby之Log應用服務? 2008.02.26

          ??? 前面我們已經接觸了很多相關的概念,我們都知道DataGuard 通過應用redo 維持primary 與各standby 之間的一致性,在后臺默默無聞支撐著的就是傳說中的Log 應用服務。Log 應用服務呢,又分兩種方式,一種是redo應用(物理standby 使用,即介質恢復的形式),另一種是sql 應用(邏輯standby 使用,通過LogMiner 分析出sql語句在standby 端執行)。
          ?
          ?
          一、Log應用服務配置選項
          ?
          1、REDO數據實時應用
          ?
          ??? 默認情況下,log 應用服務會等待單個歸檔文件全部接收之后再啟動應用(在前面redo 傳輸服務中我們介紹了不同形式的傳輸方式),如果standby 端使用了standby redologs,就可以打開實時應用(real-time apply),這樣dg 就不需要再等待接收完歸檔文件,只要rfs 將redo 數據寫入standby redologs,即可通過MRP/LSP 實時寫向standby。
          ?
          ??? 物理standby 啟用實時應用通過下列語句:

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE ;

          ?
          ??? 邏輯standby 啟用實時應用通過下列語句:

          ??? SQL> ALTER DATABASE START LOGICAL STANDBYAPPLY IMMEDIATE;

          ?
          2、REDO數據延遲應用
          ?
          ??? 有實時就有延遲,某些情況下你可能不希望standby 與primary 太過同步:),那就可以在log_archive_dest_n參數中指定delay 屬性(單位為分鐘,如果指定了delay 屬性,但沒有指定值,則默認是30 分鐘)。注意,該屬性并不是說延遲發送redo 數據到standby,而是指明歸檔到standby 后,開始應用的時候。
          ?
          ??? 不過,即使在log_archive_dest_n 中指定了delay 屬性,但如果你應用數據時指定了實時應用,則standby會忽略delay 屬性。另外,standby 端還可以通過下列的語句取消延遲應用。
          ?
          ??? 物理standby 取消延遲應用可以通過下列語句:

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE NODELAY;

          ?
          ??? 邏輯standby 取消延遲應用可以通過下列語句:

          ??? SQL> ALTER DATABASE START LOGICAL STANDBYAPPLY NODELAY;

          ?
          ??? 提示:flashback database 也可視為延遲應用的一種方式。
          ?
          ?
          二、應用redo數據到物理standby
          ?
          ??? 注意:啟動redo 應用,物理standby 需要首先啟動到mount 狀態,然后再執行下列語句啟動,或者停止redo應用。
          ?
          1、啟動redo應用
          ?
          ??? ※ 前臺應用

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE;

          ?
          ??? ※ 后臺應用

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT;

          ?
          ??? ※ 啟動實時應用,附加USING CURRENT LOGFILE 子句即可

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE;

          ?
          2、停止redredo應用
          ?

          ??? SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

          ?
          ?
          三、應用redo數據到邏輯standby
          ?
          ??? 注意:啟用sql 應用,邏輯standby 需要啟動至open 狀態。
          ?
          1、啟動sql應用
          ?

          ??? SQL> ALTER DATABASE START LOGICAL STANDBYAPPLY;

          ?
          ??? 如果要啟動實時應用,附加immediate 子句即可:

          ??? SQL> ALTER DATABASE START LOGICAL STANDBYAPPLY IMMEDIATE;

          ?
          2、停止sql應用
          ?

          ??? SQL> ALTER DATABASE STOP LOGICAL STANDBYAPPLY;

          ?
          ?
          ?
          posted on 2009-03-01 23:35 decode360 閱讀(209) 評論(0)  編輯  收藏 所屬分類: 10.DB_Tools
          主站蜘蛛池模板: 临海市| 翁源县| 阳山县| 长宁县| 西安市| 林甸县| 东阿县| 巫山县| 嘉荫县| 涡阳县| 资中县| 田东县| 正镶白旗| 渝中区| 砚山县| 奉节县| 万源市| 方城县| 京山县| 杨浦区| 姜堰市| 伊宁市| 平利县| 上饶市| 滨州市| 循化| 五常市| 横山县| 嘉祥县| 乌恰县| 衡阳市| 临夏县| 柳江县| 贺兰县| 桃源县| 大关县| 梁河县| 汾阳市| 集安市| 眉山市| 万州区|