Oracle 數(shù)據(jù)庫服務器由一個數(shù)據(jù)庫和至少一個數(shù)據(jù)庫實例組成,通常簡稱為一個實例。
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于網(wǎng)站設計制作、做網(wǎng)站、鄂倫春網(wǎng)絡推廣、小程序開發(fā)、鄂倫春網(wǎng)絡營銷、鄂倫春企業(yè)策劃、鄂倫春品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學生創(chuàng)業(yè)者提供鄂倫春建站搭建服務,24小時服務熱線:18982081108,官方網(wǎng)址:aaarwkj.com
因為一個實例和一個數(shù)據(jù)庫是如此緊密地聯(lián)系在一起,所以 Oracle 數(shù)據(jù)庫這個術語有時同時指實例和數(shù)據(jù)庫。 最嚴格地說,這些術語有下列含義 :
l 數(shù)據(jù)庫
數(shù)據(jù)庫是一組位于磁盤上的文件,用于存儲用戶數(shù)據(jù)。 這些數(shù)據(jù)文件可以獨立于數(shù)據(jù)庫實例而存在。 從 Oracle 數(shù)據(jù)庫 20c 開始, “ 數(shù)據(jù)庫 ” 特指多租戶容器數(shù)據(jù)庫 (CDB) 、可插拔數(shù)據(jù)庫 (PDB) 或應用程序容器的數(shù)據(jù)文件。
l 實例
實例是一組命名的內(nèi)存結(jié)構,用于管理數(shù)據(jù)庫文件。 數(shù)據(jù)庫實例由共享內(nèi)存區(qū)域 ( 稱為系統(tǒng)全局區(qū)域 (SGA)) 和一組后臺進程組成。 實例可以獨立于數(shù)據(jù)庫文件而存在。
多租戶體系結(jié)構使 Oracle 數(shù)據(jù)庫成為 CDB 。
每個 Oracle 數(shù)據(jù)庫必須包含或能夠包含另一個數(shù)據(jù)庫。 例如, CDB 包含 pdb ,而應用程序容器包含應用程序 pdb 。 PDB 由 CDB 或應用程序容器包含,而應用程序容器由 CDB 包含。
從 Oracle Database 20c 開始,多租戶容器數(shù)據(jù)庫是唯一受支持的體系結(jié)構。 在以前的版本中, Oracle 支持非容器數(shù)據(jù)庫 (non-container databases, non-CDBs) 。
一個 CDB 包含一個或多個用戶創(chuàng)建的 pdb 和應用程序容器。
在物理級別上, CDB 是一組文件 : 控制文件、在線重做日志文件和數(shù)據(jù)文件。 由數(shù)據(jù)庫實例管理以上文件稱為 CDB 。
下圖顯示了一個 CDB 和一個相關的數(shù)據(jù)庫實例。
· 圖 1-1 數(shù)據(jù)庫實例與 CDB
PDB 是 schemas 、 schema 對象和 nonschema 對象的可移動集合,在應用程序中作為單獨的數(shù)據(jù)庫出現(xiàn)。
在物理級別,每個 PDB 都有自己的一組數(shù)據(jù)文件,用于存儲 PDB 的數(shù)據(jù)。 CDB 包括所有 pdb 數(shù)據(jù)文件,以及一組存儲 CDB 本身元數(shù)據(jù)的系統(tǒng)數(shù)據(jù)文件。
要移動或存檔 PDB ,可以拔掉它。 unplugged PDB 由 PDB 數(shù)據(jù)文件和元數(shù)據(jù)文件組成。 unplugged PDB 在插入到 CDB 之前是不可用的。
下圖顯示了一個名為 MYCDB 的 CDB 。
· 圖 1-2 CDB 中的 PDBs
在物理上, MYCDB 是一個 Oracle 數(shù)據(jù)庫,即與一個實例關聯(lián)的一組數(shù)據(jù)文件。 盡管在 Oracle Real 應用程序集群中可以有多個實例,但 MYCDB 只有一個數(shù)據(jù)庫實例和一組數(shù)據(jù)庫文件。
MYCDB 包含兩個 pdb: hrpdb 和 salespdb 。 如圖 1-2 所示,這些 pdb 在各自的應用程序中顯示為單獨的、獨立的數(shù)據(jù)庫。 應用程序不知道它是連接到 CDB 還是 PDB 。
要管理 CDB 本身或其中的任何 PDB ,您可以連接到 CDB root 。 root 是所有 pdb 和應用程序容器所屬的模式、模式對象和非模式對象的集合。
· 1.2.1.3 應用程序容器
應用程序容器是 CDB 中一個可選的、用戶創(chuàng)建的容器,用于存儲一個或多個應用程序的數(shù)據(jù)和元數(shù)據(jù)。
application( 也稱為主應用程序定義 ) 是存儲在 application root 中的一組已命名的、版本化的公共數(shù)據(jù)和元數(shù)據(jù)。 例如, application 可能包括表、視圖、用戶帳戶和 PL/SQL 包的定義,這些定義對于一組 pdb 是通用的。
在某些方面,應用程序容器充當 CDB 中的特定于應用程序的 CDB 。 與 CDB 本身一樣,一個應用程序容器可以包含多個應用程序 pdb ,并允許這些 pdb 共享元數(shù)據(jù)和數(shù)據(jù)。 在物理級別上,應用程序容器 像 PDB 一樣 , 具 有自己的一組數(shù)據(jù)文件。
例如, SaaS 部署可以使用多個應用程序 pdb ,每個 pdb 用于一個單獨的客戶,該客戶共享應用程序元數(shù)據(jù)和數(shù)據(jù)。 例如,在下面的圖中, sales_app 是應用程序根目錄中的應用程序模型。 名為 cust1_pdb 的應用程序只包含客戶 1 的銷售數(shù)據(jù),而名為 cust2_pdb 的應用程序只包含客戶 2 的銷售數(shù)據(jù)。 對于單個客戶 PDBs ,可以進行插入、撥出、克隆和其他 pdb 級操作。
· 圖 1-3 SaaS 用例
· 1.2.2 Sharding 架構
Oracle Sharding 是一種基于跨多個 pdb 的數(shù)據(jù)水平分區(qū)的數(shù)據(jù)庫擴展技術。 應用程序?qū)?PDBs 池視為單個邏輯數(shù)據(jù)庫。
sharding 對于 OLTP 應用程序的主要好處包括線性可伸縮性、故障包容和地理數(shù)據(jù)分布。 sharding 非常適合在 Oracle 云中部署。 與實現(xiàn) sharding 的 NOSQL 數(shù)據(jù)存儲不同, Oracle sharding 提供了 sharding 的優(yōu)點,同時又不犧牲企業(yè) RDBMS 的功能。
在 sharding 架構中,每個 CDB 都托管在一個專用服務器上,服務器上有自己的本地資源 :CPU 、內(nèi)存、 flash 或磁盤。 可以將 PDB 指定為 shard 。 來自不同 cdb 的 PDB shard 組成一個邏輯數(shù)據(jù)庫,稱為 sharded 數(shù)據(jù)庫。 同一個 CDB 中的兩個 shard 不能是同一個 sharded 數(shù)據(jù)庫的成員。 但是,在同一個 CDB 中,一個 PDB 可以在一個 sharded 數(shù)據(jù)庫中,另一個 PDB 可以在一個單獨的 sharded 數(shù)據(jù)庫中。
水平分區(qū)將一個數(shù)據(jù)庫表拆分,每個分片包含具有相同列但不同行的子集。 以這種方式分割的表也稱為 sharded table 。 下圖顯示了一個經(jīng)過水平分割的 sharded table ,它橫跨三個 shards ,每個 shard 都是單獨 CDB 中的 PDB 。
圖 1-4 水平分區(qū)的 sharded table
以下示例是跨多個 CDBs 存儲客戶帳戶數(shù)據(jù)。 例如, ID 為 28459361 的客戶可以查詢他的記錄。 下圖顯示了一種可能的結(jié)構。 客戶請求通過連接池路由,其中分片控制器 ( 網(wǎng)絡監(jiān)聽器 ) 將請求定向到適當?shù)?PDB 分片,該分片包含所有客戶行。
Figure 1-5 Oracle Sharding Architecture
本文標題:Oracle20C多租戶_1.2數(shù)據(jù)庫與實例介紹
URL地址:http://aaarwkj.com/article6/pcccog.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、定制網(wǎng)站、品牌網(wǎng)站建設、網(wǎng)站建設、網(wǎng)站策劃、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)