oracle之資料字典概述

2021-05-24 08:37:16 字數 1978 閱讀 9483

oracle之資料字典概述

資料字典(data dictionary)是 oracle 資料庫的乙個重要組成部分,這是一組用於記錄資料庫資訊的唯讀(read-only)表。

資料字典中包 含: 

資料庫中所有方案物件(schema object)的定義(包括表,檢視,索引,簇,同義詞,序列,過程,函式,包,觸發器等等)

資料庫為乙個方案物件分配了多少空間,以及該物件當前使用了多少空間

列的預設值

完整性約束(integrity constraint)資訊

資料庫使用者名稱

每個使用者被授予(grant)的許可權(privilege)與角色(role)

監控(audit)資訊,例如哪個使用者對某個方案物件進行了訪問或更新操作

資料庫中的其他概要資訊

資料字典由以下兩種結構組成:

使用者訪問檢視:對資料字典基表內儲存的資料進行彙總與展示。這些檢視利用連線(join)及 where 子句簡化基表中的資料,將其解碼(decode)為使用者可理解的資訊。

資料字典有三個主要用途:

oracle 利用資料字典來獲取關於使用者,方案物件,及儲存結構(storage structure)的資訊。 

每當資料庫中執行了 ddl 語句後,oracle 將對資料字典進行修改。 

所有 oracle 使用者都可以使用資料字典來獲取關於資料庫的資訊。

資料字典的同義詞:oracle 為許多資料字典檢視建立了公共同義詞(public synonym),以便使用者能夠方便地對其進行訪問。

資料字典快取:由於 oracle 在資料庫執行中需要不斷地訪問資料字典來驗證使用者許可權及方案物件狀態,大量的資料字典資訊將被快取到 sga 的資料字典快取(dictionary cache)內。

字首                  覆蓋範圍 

user              使用者檢視(使用者方案(schema)內的物件)

all               擴充套件的使用者檢視(使用者可訪問的物件)

dba               dba 檢視 (所有使用者方案內的物件)

dba型的資料字典:以 dba 為字首的檢視能夠展現整個資料庫的全部內容。不應在這些檢視上建立同義詞,因為以 dba 為字首的檢視只應由管理員查詢。因此在查詢 dba 檢視時,管理員必須在檢視名之前加上其擁有者的字首 sys

dual表:名為 dual 的表是資料字典內的乙個小表,oracle 及使用者程式可以使用此表來獲得乙個確定的值。此表只有一列名為 dummy;只有一行資料,值為 x。

在資料庫執行過程中,oracle 將維護一組虛擬表(virtual table)用於記錄資料庫的當前狀態。這組表被稱為動態效能表(dynamic performance table)。

動態效能表並不是真正的表,大多數使用者不應訪問其中的資訊。但是資料庫管理員可以對其進行查詢,或在其上建立檢視並將訪問許可權授予其他使用者。這些檢視有時被稱為固定檢視(fixed view),因為資料庫管理員不能將其修改或移除。

動態效能表由 sys 使用者所擁有;她們的名字都以 v_$ 開頭。這些表上建立有檢視,而檢視上建立有公共同義詞。這些公共同義詞的名字都以 v$ 開頭。

Oracle之資料字典

oracle的資料字典是資料庫的重要組成部分之一,它隨著資料庫的產生而產生,隨著資料庫的變化而變化,體現為sys使用者下的一些表和檢視。資料字典名稱是大寫的英文本元。資料字典裡存有使用者資訊 使用者的許可權資訊 所有資料物件資訊 表的約束條件 統計分析資料庫的檢視等。我們不能手工修改資料字典裡的資訊...

oracle基礎之資料字典

1.資料字典概念 資料字典是oracle資料庫的核心元件,它由一系列唯讀的資料字典表和資料字典檢視組成.資料字典中記錄了資料庫的系統資訊 例程執行的效能。資料字典的所有者為sys使用者,其資料字典表和資料字典檢視都儲存在system表空間中.資料字典表主要儲存以下資訊 各種方案物件的定義資訊,如表 ...

Oracle 資料字典

資料字典包括以下內容 1.所有資料庫schema物件的定義 表,檢視,索引,聚簇,同義詞,序列,過程,函式,包,觸發器 2.資料庫的空間分配和使用情況 3.欄位的預設值 4.完整性約束資訊 5.oracle使用者名稱,角色,許可權等資訊 6.審計資訊 7.其他資料庫資訊 資料字典有4部分組成 內部r...