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 閱讀(207) 評論(0)  編輯  收藏 所屬分類: 10.DB_Tools
          主站蜘蛛池模板: 莎车县| 商洛市| 鞍山市| 万安县| 南宫市| 鹤壁市| 沛县| 策勒县| 海伦市| 通海县| 焉耆| 天津市| 社旗县| 榆中县| 交城县| 枞阳县| 安溪县| 青田县| 固阳县| 宜昌市| 公安县| 黑龙江省| 永泰县| 白城市| 吴忠市| 茶陵县| 射阳县| 葵青区| 宣恩县| 平阳县| 镇沅| 黔江区| 东辽县| 西贡区| 南平市| 酒泉市| 临漳县| 蓬莱市| 安新县| 邳州市| 株洲市|