Oracle 資料字典

2021-05-21 14:24:31 字數 1900 閱讀 4453

資料字典包括以下內容:

1.所有資料庫schema物件的定義(表,檢視,索引,聚簇,同義詞,序列,過程,函式,包,觸發器)

2.資料庫的空間分配和使用情況

3.欄位的預設值

4.完整性約束資訊

5.oracle使用者名稱,角色,許可權等資訊

6.審計資訊

7.其他資料庫資訊

資料字典有4部分組成:內部rdbms(x$)表,資料字典表,動態效能(v$)檢視,資料字典檢視

x$表是oracle資料庫的核心部分,這些表用於跟蹤內部資料庫資訊,維持資料庫的正常執行

select * from x$kvit

資料字典表用以儲存表,索引,約束以及其他資料庫結構的資訊,這些物件通常以$結尾

sql.bsq是非常重要的乙個檔案,改檔案位於$oracle_home/rdbms/admin目錄下

雖然oracle並未提供直接的方法,在原物件儲存位置被重新寫入資料之前,truncate資料仍然是有辦法恢復的

select value from v$diag_info where name = 'default trace file'

dbms_metadata

user_ 類檢視包含了使用者所擁有的相關物件資訊,使用者可以通過這個檢視查詢自己擁有的物件資訊

all_  類檢視包含了使用者有許可權訪問的所有物件的資訊

dba_  類檢視包含了資料庫所有相關物件的資訊,使用者需要select any table 許可權才能訪問

1.dba_***    --資料庫中的所有物件

2.all_***    --當前使用者可以訪問的物件

3.user_***    --當前使用者擁有的物件

常用資料字典檢視

1.dict/dictionary

2.dict_columns

3.obj$/dba_objects/all_objects/user_objects

4.dba_source/all_source/user_source

動態效能(v$)檢視記錄了資料庫執行時資訊和統計資料,大部分動態效能檢視被實時更新以反應資料庫的當前狀態

gv$檢視開始被引入,其含義為global v$.除了一些特例以外,每個v$檢視都有乙個對應的gv$檢視存在

gv$檢視的產生是為了滿足ops/rac環境的需要,在ops/rac環境中,查詢gv$檢視返回所有例項資訊,而每個v$檢視是基於gv$檢視,增加了inst_id列的where條件限制建立,只包含當前連線例項資訊

select view_definition from v$fixed_table

通常大部分使用者訪問的v$物件,並不是檢視,而是指向v_$檢視的同義詞;而v_$檢視是基於真正的v$檢視(這個檢視是基於x$表建立的)建立的。

在進行資料訪問時,oracle訪問view優先,然後是同義詞

nomount階段能夠訪問的檢視

v$parameter,v$spparameter,v$sga,v$sgastat,v$bh,v$instance,v$option,v$version,v$process,v$session

mount階段能夠訪問的檢視

v$thread,v$controlfile,v$database,v$datafile,v$logfile,v$datafile_header

sql語句中oracle對於物件名的解析順序

1.oracle首先檢視在發出命令的使用者模式中是否存在表和檢視

2.如果表或檢視不存在,oracle檢查私有同義詞是否存在

3.如果私有同義詞存在,將使用這個同義詞所引用的物件

4.如果私有同義詞不存在,檢查同名的公共同義詞是否存在

5.如果公共同義詞存在,將使用這個同義詞所引用的物件

6.如果公共同義詞不存在,則返回錯誤資訊

oracle 資料字典

oracle資料字典 select from user tab columns 檢視使用者列物件 select from user tab comments 檢視使用者表的備註 select from user tab statistics select from all users 所有使用者 s...

Oracle 資料字典

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

oracle資料字典

下面按類別列出一些oracle使用者常用資料字典的查詢使用方法。一 使用者 檢視當前使用者的預設表空間 sql select username,default tablespace from user users 檢視當前使用者的角色 sql select from user role privs ...