官术网_书友最值得收藏!

第2章 CDB和PDB操作

2.1 多租戶環境下用戶的操作及工具

2.1.1 多租戶環境

? 規劃多租戶環境:創建一個具體CDB需要進行認真的思考和規劃。當計劃一個CDB時,一般要考慮以下的因素:要插入到CDB中的PDB數量;支持CDB的資源需求;應用到整個CDB中的配置包括哪些選項,以及應用到每一個PDB的配置包括哪些選項。

圖2-1 新創建的CDB結構

? 創建一個或者多個的CDB:當完成計劃后,用戶可以使用數據庫配置助手(DBCA)或者使用CREATE DATABASE SQL語句創建一個或者多個CDB。當創建一個CDB后,也就創建了根(Root)容器和種子(Seed)容器,根包含了最小的用戶數據或非用戶數據,種子包含非用戶數據。新創建的CDB結構如圖2-1所示。

? 創建、插入和拔出PDB:PDB包括用戶數據。當用戶創建了一個CDB后,就可以創建PDB,將PDB插入CDB中,或者從CDB中拔出PDB;也可以從一個CDB中拔出PDB,然后插入到另一個CDB中;如果用戶需要,也可以將PDB從一個CDB移到另一個CDB中。

? 管理和監視CDB:管理和監視CDB包括管理整個CDB、根和PDB的一些屬性。CDB和非CDB的一些管理任務相同。

? 管理和監視PDB:管理和監視PDB與管理和監視非CDB相似,但是有區別。

由于在Oracle 12c數據庫服務器中一般只有一個CDB數據庫,這個數據庫中有多個PDB,每個PDB有其相應的用戶對其進行操作,因此每個用戶通過操作一個應用程序實現對PDB中的數據對象操作,如圖2.2所示。Oracle 12c數據庫服務器放在世界任何可以連接Internet的地方,這個CDB數據庫中有三個PDB數據庫,有三個應用(“某學校教學管理” “某公司生產管理”“某醫院醫療管理”)對應這三個PDB。這三個應用屬于不同應用領域的三個單位所有。假設三個PDB數據庫名分別叫PDB1、PDB2和PDB3,三個PDB數據庫分別由用戶Turing、Smith和Tom進行管理。在CDB數據庫已經啟動的情況下,當一個用戶要操作數據庫時,首先要建立一個PDB數據庫例程,假設用戶Smith在歐洲先操作數據庫,Smith就需要先建立一個PDB1數據庫例程,然后裝載數據庫和打開數據庫,建立會話session A。用戶Smith操作數據庫要求數據庫參數必須滿足其要求,例如時區、貨幣(單位符號是€)等,假設Smith在創建例程時按其在歐洲的要求定義了這些參數,這樣用戶Smith就可以操作數據庫中“某公司生產管理”應用中的數據表及其他的數據庫對象。假設在中國的用戶Turing要操作PDB2數據庫,其操作的是“某學校教學管理”應用中的表和其他的數據庫對象,由于CDB例程已經啟動,因此,用戶Turing建立PDB2數據庫例程、裝載PDB2數據庫和打開PDB2數據庫前就不需要再建立CDB例程了,直接建立會話session B即可,但是用戶Turing在中國操作數據庫時的參數要符合中國的習慣,例如時區、貨幣(單位符號是¥)等。這些參數由用戶Turing在創建數據庫例程時按習慣定義,用戶Turing可以在自己的會話session B中設置這些參數值,使其滿足我們的習慣和要求。

該例子說明用戶在更改數據庫初始化參數時,可以按要求更改PDB例程參數,也可以按要求更改會話參數。

從該例子中可以看出,雖然在CDB中有三個PDB數據庫,但是這三個PDB數據庫PDB1、PDB2和PDB3之間邊界非常明確,就是通過PDB數據庫名進行界定,不同的數據庫用戶只能連接到自己對應的PDB數據庫。

當然,用戶也可以將圖2-2中的三個應用放在一個PDB數據庫中進行管理,那么,三個應用的邊界仍然可以做到非常明確,就是通過表空間進行界定。這是Oracle 12c之前版本的數據庫模式,與Oracle 12c要求的數據庫云計算不相適應,用戶在Oracle 12c中不要使用這種模式。

圖2-2 多個租戶操作PDB數據庫

本書闡述語法過程中,對命令中的語法約定見表2-1所列。

表2-1 命令中的語法約定

2.1.2 多租戶環境的操作工具

用戶可以使用以下工具完成多租戶環境的操作任務。

? SQL *PLUS工具:SQL *PLUS是一個命令行工具,在SQL *PLUS工具中,用戶使用SQL語句或者Oracle 12c支持的PL/SQL包可以創建、管理、監視CDB和PDB。

? DBCA工具:Oracle的數據庫配置助手(Database Configuration Assistant, DBCA)是一個圖形用戶界面程序,用戶使用該程序可以配置CDB、創建PDB、將PDB插入到CDB或者拔出PDB。

? Oracle企業管理器云控制程序:云控制是一個圖形用戶界面的系統管理工具,使用該工具用戶可以管理和監視CDB及其PDB。

? Oracle SQL Developer:該工具是圖形化的SQL *PLUS程序,使用過Oracle的用戶普遍反映該工具操作較為方便。

? Server Control程序:使用SRVCTL程序可以創建和管理PDB服務。

主站蜘蛛池模板: 红河县| 阜南县| 汨罗市| 岳池县| 观塘区| 赤峰市| 洛川县| 酒泉市| 贺兰县| 青铜峡市| 凭祥市| 板桥市| 夏邑县| 新竹市| 旺苍县| 嘉善县| 龙井市| 苗栗县| 达拉特旗| 临朐县| 安仁县| 太康县| 桂平市| 马公市| 龙江县| 杭锦旗| 永城市| 介休市| 开远市| 韩城市| 博兴县| 九台市| 江北区| 饶阳县| 长葛市| 朝阳区| 罗山县| 尼木县| 巍山| 雷波县| 嘉定区|