有關(guān)Oracle數(shù)據(jù)字典5個方面的基本介紹
Oracle數(shù)據(jù)字典是Oracle數(shù)據(jù)庫的最重要的組成部分,是Oracle存放有關(guān)數(shù)據(jù)庫信息的地方,其用途是用來描述數(shù)據(jù)的,它提供了數(shù)據(jù)庫的系統(tǒng)信息,以及例程的信息。
1.Oracle數(shù)據(jù)字典的概念
數(shù)據(jù)字典是Oracle數(shù)據(jù)庫的核心組件,它由一系列只讀的數(shù)據(jù)字典表和數(shù)據(jù)字典視圖組成。數(shù)據(jù)字典表中記錄了數(shù)據(jù)庫的系統(tǒng)信息,如方案對象的信息,例程運(yùn)行的性能信息(如例程的狀態(tài),SGA區(qū)的信息)。數(shù)據(jù)字典表達(dá)所有者是SYS用戶,其數(shù)據(jù)字典表和數(shù)據(jù)字典視圖都被保存在SYSTEM表空間中。所以,為了性能和安全的原因,Oracle建議不要在SYSTEM表空間中創(chuàng)建其它方案對象。
數(shù)據(jù)字典主要保存如下信息:
1)各種方案對象的定義信息,如表,視圖,索引,同義詞,緒論,存儲過程,函數(shù),包,觸發(fā)器和各種對象。
2)存儲空間的分配信息,如為某個對象分配了多少存儲空間,該對象使用了多少存儲空間。
3)安全信息,如賬戶,權(quán)限,角色,完整性約束信息。
4)例程運(yùn)行時代性能和統(tǒng)計信息。
5)其他數(shù)據(jù)庫本身的基本信息。
2.Oracle數(shù)據(jù)字典內(nèi)容包括:
1)數(shù)據(jù)庫中所有模式對象的信息,如表、視圖、簇、及索引等。
2)分配多少空間,當(dāng)前使用了多少空間等。
3)列的缺省值。
4)約束信息的完整性。
5)Oracle用戶的名字。
6)用戶及角色被授予的權(quán)限。
7)用戶訪問或使用的審計信息。
8)其它產(chǎn)生的數(shù)據(jù)庫信息。
3.Oracle數(shù)據(jù)字典的主要用途是:
1)Oracle通過查詢數(shù)據(jù)字典表或數(shù)據(jù)字典視圖來獲取有關(guān)用戶,方案對象。對象的定義信息以及其他存儲結(jié)構(gòu)的信息,以便確認(rèn)權(quán)限,方案對象的存在性和正確性。
2)在每次執(zhí)行DDL語句修改方案對象和對象后,Oracle都在數(shù)據(jù)字典中記錄下所做的修改。
3)用戶可以從數(shù)據(jù)字典的只讀視圖中,獲取各種與方案對象和對象有關(guān)的信息。
4)DBA可以從數(shù)據(jù)字典的動態(tài)性能視圖中,監(jiān)視例程的運(yùn)行狀態(tài),為性能調(diào)整提供依據(jù)。
4.Oracle數(shù)據(jù)字典的組成
為了方便使用,數(shù)據(jù)字典中的信息通過表和視圖的方式組織。數(shù)據(jù)字典的組成包括數(shù)據(jù)字典表和數(shù)據(jù)字典視圖兩部分。
5.Oracle數(shù)據(jù)字典表
數(shù)據(jù)字典表中的所有信息實際上都是保存在數(shù)據(jù)字典表中的。數(shù)據(jù)字典表中存儲的信息通常都是經(jīng)過加密處理的。數(shù)據(jù)字典表屬于SYS用戶,通過在創(chuàng)建數(shù)據(jù)庫時自動運(yùn)行SQL.BSQ腳本來創(chuàng)建數(shù)據(jù)字典表。大部分?jǐn)?shù)據(jù)字典表的名稱中都包含$等這樣的特殊符號。
【編輯推薦】