12c 的 Cascaded Standby 資料庫 (文件 ID 2179701.1)

mosdoc發表於2016-12-14

文件內容


用途

詳細資訊
  實時 Cascading:
  先決條件:
  設定:
  Far Sync Standby 資料庫:
  Data Guard Broker 和 Cascaded Standby 資料庫:

參考


適用於:

Oracle Database - Enterprise Edition - 版本 12.1.0.1 和更高版本
本文件所含資訊適用於所有平臺
***Checked for relevance on 13-Jul-2015***

用途

 這篇文件解釋了 Cascaded Standby 在 oracle 12c 上的增強特性。

詳細資訊

 

Oracle 12c 的 cascading standby 資料庫為使用者增加了更多的選項。12c 的版本對比以前的版本增加了以下的新選項:

 

  1. 實時 Cascading
  2. Far Sync Standby 資料庫
  3. Data Guard Broker 提供對 cascading standby 資料庫的支援

 

但是,你還只能從配置 physical standby 資料庫去 cascade 另一個 standby 資料庫。 目前 logical standby 資料庫還不支援 cascade 另一個 standby 資料庫。

 

實時 Cascading:

 

新版本現在支援以實時的模式將 redo 從第一個 standby 資料庫傳遞到 cascaded standby 資料庫。因此在第一個 standby 資料庫,Redo 的資訊會在被寫到 Standby Redolog 後立即傳遞到 cascaded standby 資料庫。

而非實時 Cascading 意味著:只有主庫的 log Switch 之後,整個 log sequence 才會被傳遞到最終的 Standby 資料庫上。

 

先決條件:

 

  • 第一個(Cascading)standby 資料庫必須是物理的或者是 Far Sync Standby 資料庫
  • 必須保證至少在 Cascading standby 資料庫上使用 Standby Redolog
  • Active Data guard 的選項必須是有 license 的
  • Primary,Cascading,Cascaded standby 資料庫的 db_unique_name 必須體現在所有資料庫 log_archive_config 的 dg_config 中

 

設定:

 

首先 ,建立一個通常的 Dataguard 環境到 cascading standby 資料庫。Log 的傳輸模式應該為 SYNC,同時在 cascading standby 配置 Standby Redolog。在建立完 cascaded standby 資料庫以後就可以設定 cascading log 的傳輸服務了,下面是一些注意事項:

 

  • Primary,Cascading,Cascaded standby 資料庫的 db_unique_name 必須體現在所有資料庫 log_archive_config 的 dg_config 中。
  • 在 Cascading standby 資料庫的 log_archive_dest_n 裡面設定 ‘valid_for=(STANDBY_LOGFILES,STANDBY_ROLE)’ 的屬性來傳輸給 cascaded(最終)standby 資料庫。
  • 你可以透過設定 Log Transport 的模式來切換實時以及非實時的 cascading 模式:

ASYNC = Real-Time Cascading

SYNC = Non Real-Time Cascading

  • 你只可以設定從 log_archive_dest_1 到 log_archive_dest_10 作為非實時模式的目的地,而你可以在 cascading standby 資料庫上設定所有的 log_archive_dest_n 作為實時 cascading 的目的地。
  • Cascading Standby 資料庫可以執行在任何保護模式下。
  • Cascading Standby 資料庫可以傳輸給一個或者多的 terminal standby 資料庫。
  • Cascading Standby 資料庫的 FAL_SERVER 應該設定為 primary 庫或者是其他的 primary 直接連線的 standby 資料庫。
  • Terminal Standby 資料庫的 FAL_SERVER應該設定 cascading Standby 資料庫或者 Primary 資料庫。

 

Far Sync Standby 資料庫:

 

Far Sync Standby 資料庫對於 Terminal standby 資料庫來說是作為一個 RedoLog repository 資料庫的作用。他不含有任何的資料檔案。Far Sync Standby 資料庫只是啟動了 Log 傳輸服務。Far Sync Standby 資料庫的優點是它可以作為 Primary 資料庫的一個在最大保護模式下的本地的 ArchiveLog Repository,而 Physical 和 logical standby 資料庫可以執行在遠端,請參考文件:

Note 1565071.1: Data Guard 12c New Feature: Far Sync Standby

來了解具體的關於 Far Sync Standby 資料庫內容以及設定的步驟。

 

 

Data Guard Broker 和 Cascaded Standby 資料庫:

 

Data Guard Broker 有一個新的‘RedoRoutes’的屬性可以用來構建和部署 cascaded Data Guard Broker 的配置。 以下是它的格式:

 

RedoRoutes = ‘(<Redo Source> : <Redo Destination>)’

 

Redo Source: Redo 的來源,他可以是 db_unique_name 或者是一個本地資料庫名別名的 ‘LOCAL’-Keyword(不能被 Far Sync Standby 資料庫使用)

Redo Destination: Redo 從這個資料庫傳輸到的目的地。他可以是一個或者多個(用逗號分開)db_unique_name 或者是代表所有在 Data Guard Broker 配置中可能目的地的別名的‘ALL’-Keyword。 你可以設定到目的地的傳輸的模式。包括以下:

  • SYNC:                 等同於 log_archive_dest_n 中的屬性 ‘SYNC AFFIRM’ 或者是非實時 Cascade
  • ASYNC:               等同於 log_archive_dest_n 中的屬性 ‘ASYNC’ 或者是 實時 Cascade
  • FASTSYNC :         等同於 log_archive_dest_n 中的屬性 ‘SYNC NOAFFIRM’

 

 

例子:

 

Primary Database:                               prim

Cascading Standby Database:               local_stdby

Cascaded (terminal) Standby Database: remote_stdby

如果想實現’SYNC NOAFFIRM’的本地 standby 資料庫和在實時 cascade 模式下的遠端 standby 資料庫,設定如下:

 

Primary Database (prim)

RedoRoutes = ‘(LOCAL : local_stdby FASTSYNC)’

 -> Primary 資料庫只傳送 Redo 到 local Standby 資料庫,但是有到遠端 standby 資料庫的 Archive 目的地。

 

Local Standby Database (local_stdby)

RedoRoutes = ‘(prim : remote_stdby ASYNC)’

 -> 這裡需要配置來源於 ‘prim’的 REDO 是以實時 cascade(ASYNC)的方式轉發到遠端的 Standby 資料庫。

 

 

參考

NOTE:1565071.1 - Data Guard 12c New Feature: Far Sync Standby

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31393455/viewspace-2130504/,如需轉載,請註明出處,否則將追究法律責任。

相關文章