Oracle 18c新特性詳解-多租戶專題

Sun雪發表於2018-11-09

Oracle 18c,傳說中全球第一款自動駕駛資料庫,正式到來。18c不僅僅是資料庫,更是一種雲服務,包括著Oracle資料庫18c,Oracle雲基礎架構和Oracle雲工具,機器學習,能夠實現自治駕駛,自治安全,自治修復。資料庫自治是否意味著DBA會失業的問題一直困擾著廣大的Oracle DBA們,今天我們來詳細揭曉一下Oracle 18c中的核心特性,去真實地感知我們即將面臨的處境。

首先我們從Oracle資料庫的生命週期表中可以看出,18c並不意味著跟以前我們所熟知的11g 12c有天壤之別。事實上,18c在Oracle的產品體系中的真實身份是 Oracle12.2.0.2.

Oracle 18c新特性詳解-多租戶專題
當然,Database 18c是“Oracle自治資料庫”的基礎,包含著自動化新功能,但沒有云架構提供的機器學習,它就不會自動執行,跟傳統的資料庫沒什麼兩樣,它仍然可以在本地執行。

接下來我們詳細講解Oracle18c中的核心新特性,知己知彼,才能從容地擁抱變化。

part 1:多租戶新特性詳解:

新特性1:可重新整理的PDB切換

在12.2中,可以通過熱克隆的方式,將一個CDB中的PDB複製到另一個CDB中,以線上的方式複製檔案實現零當機。

而18c中,增加了重新整理 refresh的功能,當其中一個PDB出現故障或其他原因,需要與另一個PDB保持一致時,只需要通過refresh命令,一鍵實現同步。並可以設定頻率保持實時更新。

Oracle 18c新特性詳解-多租戶專題
切換命令如下:

CDB 1:create pluggable database Red;

CDB2:create pluggable database Red from Red@CDB1_Link

         create  pluggable database Gold;
複製程式碼

CDB1:create pluggable database Brown;

CDB2: create pluggable database Grey;

CDB1:refresh mode every 2 minutes;

此特性可以用於計劃內的switchover。使用如下命令:

alter pluggable databaseGrey

refresh mode every 2 minutes

fromGrey@dblink switchover;

也可用於計劃外的failover。命令如下(在正常的PDB執行):

alter pluggable database Grey refresh;

alter pluggable database Grey refresh mode none;

alter pluggable database Grey open read write;

新特性2:快照轉盤

這個功能有點類似虛擬機器中的快照。當為PDB啟用快照功能後,您可以建立最多8個快照,類似一個旋轉的轉盤一樣,當多餘8個後,最老的快照會被刪除。通過快照轉盤可以方便地實現基於時間點的恢復。

Oracle 18c新特性詳解-多租戶專題
在採用快照轉盤進行基於時間點的恢復時,主要使用 上述 熱克隆的技術,來保證恢復後事務的一致性。快照轉盤可以實現克隆到特定時間點(或SCN),從快照轉盤恢復最近的快照,應用存檔日誌執行恢復,前滾到所需的時間點

alter pluggable database Hot_Clone open;

在整個快照盤中,所有快照會以時間為軸進行輪播,當達到snapshot limit時,會自動覆蓋最早的snapshot。 如下:

Oracle 18c新特性詳解-多租戶專題
新特性3、PDB的加密複製

在18c中,如果CDB中的PDB需要複製(clone),RMAN可以複製CDB中未加密的PDB或表空間,以便在目標CDB中加密它們。 使用DUPLICATE命令的AS ENCRYPTED子句執行復制。同樣,使用DUPLICATE命令的AS DECRYPTED子句將加密的PDB複製到目標CDB而不使用加密。

如下圖,CDB2加密,CDB3不加密。但可以暢通實現PDB在二者之間的複製。

Oracle 18c新特性詳解-多租戶專題
新特性4:CDB Fleet

CDB fleet 是不同CDB的集合,可以作為一個邏輯CDB進行管理。

統一管理帶來的好處是:

1、為大量可擴充套件性和許多CDB的集中管理提供底層基礎架構

2、為應用程式提供超過最大數量的PDB

3、管理PDB的適當伺服器資源,例如CPU,記憶體,I / O速率和儲存系統。

在CDB fleet中,有一個作為leader的CDB,負責整體資源的協調和管理,並可以通過該CDB直接在其他CDBzhong 直接執行操作。這個CDB叫做 CDB Lead。而其他在fleet中的 CDB則為普通的CDB Member。

其操作關係如下:

Oracle 18c新特性詳解-多租戶專題
該特性可以用於以下場景:

1、從主要CDB監控和收集CDB的診斷資訊

2、在CDB機群的不同PDB中查詢Oracle提供的物件,例如DBA檢視

3、作為一箇中心位置,可以在其中檢視有關多個CDB的所有PDB的資訊和狀態

新特性5:Container Map

Container Map可以基於儲存在CDB表列中的值定義基於PDB的分割槽策略。通過該功能將CDB的表結構和管理機制可以繼承到對應的PDB當中。 選擇常用且永不更新的列。

當在CDB的 application root中建立了Container map後,PDB中會有對應的 Map-tab。當Container Map的內容發生更新時,會自動同步到map-tab當中。

Oracle 18c新特性詳解-多租戶專題
更多新特性,會繼續分享。也可以直接檢視Oracle 18c官方文件。 docs.oracle.com/en/database…

相關文章