【ASK_ORACLE】Oracle Data Guard(三)邏輯備庫的概念和優勢

Attack_on_Jager發表於2021-11-18

說明

DG備庫有三種型別:物理備庫、邏輯備庫和快照備庫。  一般會把物理或邏輯備庫應用到生產環境。除非有特殊要求,一般建議使用物理備庫。


邏輯備庫的概念和優勢

(1)概念

邏輯備庫最初是作為主資料庫的相同副本建立的,後來可以更改為具有不同的結構。

邏輯備庫透過執行SQL語句進行資料更新。邏輯備庫的靈活性可以在升級 Oracle 資料庫軟體(補丁集和新的 Oracle 資料庫版本)的同時並以滾動(Rolling)方式執行其他資料庫維護, 幾乎沒有停機時間 從Oracle 11 g開始,臨時邏輯資料庫滾動升級過程也可以用於現有的物理備用資料庫。

DG透過日誌挖掘技術(Log Miner)將日誌檔案中的資料轉換為等價的SQL語句,然後在邏輯備庫上執行SQL語句,自動將歸檔檔案或備用重做日誌檔案中的資訊應用到邏輯備庫。因為邏輯備庫是使用SQL語句更新的,所以它必須保持開啟狀態。 雖然邏輯備庫是以讀寫模式開啟的,但其重新生成的SQL的目標表只能用於只讀操作。在更新這些表時,它們可以同時用於其他任務。

但是, 邏輯備庫對資料型別、表型別、DDL和DML操作型別有一定的限制(物理備庫沒有這個限制),可以透過靜態效能檢視 DBA_LOGSTDBY_UNSUPPORTED來檢視不支援的資料型別。所以,一旦使用了不被支援的資料型別,那備庫就不能和主庫保持一致。另外,邏輯備庫是不會同步SYS使用者的物件的。

需要注意的是,建立邏輯備庫前,要先建立物理備庫,再把物理備庫轉化成邏輯備庫。


看到這裡,大家可能會說邏輯備庫那麼多限制,而且還要從物理備庫轉換過來,那我直接用物理備庫多好?稍安勿躁,Oracle發明邏輯備庫當然是有他的用意的,且先看看下面邏輯備庫的優勢大家再來抉擇。

 

(2)優勢

邏輯備庫是高可用 (HA) 的理想選擇,同時仍可以提供資料恢復。與物理備庫相比,邏輯備用資料庫提供了顯著的額外 HA 優勢:

1)最大限度地減少軟體升級的停機時間

邏輯備用資料庫非常適合以滾動方式升級DG配置。 邏輯備庫可大大減少與應用補丁集和新軟體版本相關的停機時間。邏輯備庫可以升級到新版本,然後切換成為新主庫。這可以在舊主庫轉換為邏輯備庫並應用補丁集時完全可以繼續使用。並且邏輯備庫為DBMS_ROLLINGPL/SQL包提供了底層平臺,該平臺提供的功能允許在滾動升級和其他儲存重組的上下文中使DG配置高度可用。

 

2)支援報告和決策支援請求

邏輯備庫的一個主要好處是可以建立重要的輔助結構來最佳化報告工作量;可能會生成對主節點的事務響應時間產生過大影響的結構。邏輯備庫可以將其資料物理重組為具有不同分割槽的不同儲存型別,具有許多不同的索引,具有建立和維護的按需重新整理物化檢視,並可用於驅動資料維度(Data Cubes)和其他OLAP資料檢視的建立. 但是 ,邏輯備庫不允許對資料進行任何轉換(例如僅複製列的子集或允許在使用者表上新增其他列),Oracle官方推薦用OGG(Oracle GoldenGate)來解決。


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

相關文章