溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

oracle常用數(shù)據(jù)字典的知識點有哪些

發(fā)布時間:2022-03-18 14:23:09 來源:億速云 閱讀:159 作者:iii 欄目:關系型數(shù)據(jù)庫

本篇內容介紹了“oracle常用數(shù)據(jù)字典的知識點有哪些”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一數(shù)據(jù)字典的分類
1.靜態(tài)數(shù)據(jù)字典表的 2.靜態(tài)數(shù)據(jù)字典視圖 3 動態(tài)數(shù)據(jù)字典表 4 動態(tài)數(shù)據(jù)字典視圖
二 數(shù)據(jù)字典的使用
1.靜態(tài)數(shù)據(jù)字典表的使用
靜態(tài)數(shù)據(jù)字典表只能由ORACLE 進行維護。
2.靜態(tài)數(shù)據(jù)字典視圖的使用 *
通常用戶通過對靜態(tài)數(shù)據(jù)字典視圖的查詢可以獲取所需 i要的所有數(shù)據(jù)庫信息。
Oracle 靜態(tài)數(shù)據(jù)字典分類
名稱前綴                                       含義  
user_                          包含了當前數(shù)據(jù)庫用戶所擁有的所有的模式對象的信息
all_                            包含了當前數(shù)據(jù)庫用戶可以訪問的所有的模式對象的信息
dba_                           包含了所有數(shù)據(jù)庫對象信息,只有具有DBA角色的用戶才嫩而過訪問的這些視圖 
例如:
select * from dba_tables
select  * from all_tables
select   * from user_tables;
注: dba_ 開頭的 必須是sys 用戶所有 ,非 sys 用戶 需要在前面加 sys 前綴
下面都是一些常用的視圖家族,都有一個DBA_ ALL_ USER_ 的視圖 
col_privs   包含了表的列權限信息,包含授予者,被授予者和權限名稱等信息,
extents     存儲分配信息,包括數(shù)據(jù)段名 表空間名和分區(qū)編號,分區(qū)大小
indexes    索引信息  包含索引類型, 唯一性, 索引作用等表的信息
ind_columns   索引列信息  包括索引上的列的排序方式等信息
object      對象信息, 包括對象名稱 類型  創(chuàng)建時間 等信息
segments  表和索引的數(shù)據(jù)段信息,包括表空間,存儲設置等信息
sequences   序列信息 包含序列名稱 ,循環(huán)性,最大值等信息
source    除觸發(fā)器之外的所有存儲過程,函數(shù),包的源代碼信息 
synonyms 同義詞信息   包括引用的對象等信息
sys_privs   系統(tǒng)權限信息 包括系統(tǒng)權限名稱 授予者
tab_columns   表和視圖的列信息 ,包括列的數(shù)據(jù)類型等信息 
tab_privs  表權限信息 
tables  表信息 包括表所屬的表空間 ,存儲參數(shù) ,數(shù)據(jù)行數(shù)量等信息。
triggers   觸發(fā)器信息 包括觸發(fā)器的類型,事件。觸發(fā)器體等信息
users 用戶信息 。包括用戶臨時和默認的表空間的類型
views   視圖 信息  
看一下權限視圖 
role_sys_privs  角色擁有的系統(tǒng)權限視圖
role_tab_privs  角色擁有的對象權限
user_role _ privs  用戶擁有的角色 
user_sys_privs   用戶擁有的權限的角色
user_tab_privs_mads    用戶分配的關于表對象權限
user_tab_privs_recd  用戶擁有的關于表對象權限
user_col_privs_mads  用戶分配的關于列的對象權限
user_col_privs_recd  用戶擁有的關于列的對象權限 
3.  動態(tài)性能表是數(shù)據(jù)庫實例啟動后  創(chuàng)建的表。動態(tài)性能表都數(shù)據(jù)SYS 用戶; 用于存放數(shù)據(jù)庫在運行的過程中的性能相關的信息。 通過以下的視圖查看 
 select name from  v_$fixed_table;
4.動態(tài)性能視圖的使用;
只有sys 用戶和擁有DBA 角色的用戶可以訪問 。
在數(shù)據(jù)庫啟動到 NOMOUNT 的狀態(tài)時 可以訪問 v$ parameter v$sga  v$session v$process v$instance v$version v$option 
當數(shù)據(jù)庫啟動到 mount 的狀態(tài)時 我們還可以訪問 v$ log v$logfiel v$datafile v$controlfile  v$ database v$thread  v$datafile_header  
當數(shù)據(jù)庫完全啟動后。可以訪問 v_$fixed_table
v$access   包含當前被鎖定的數(shù)據(jù)庫對象及正在訪問他們的會話
v$archive  包含歸檔所需的重做日志文件中的信息
v$ archived_log   包含從控制文件中獲取的歸檔日志信息。
v$archive_processes  包含于一個實例相關的arch 進程的狀態(tài)信息 
v$ backup   包含聯(lián)機數(shù)據(jù)文件的備份狀態(tài)信息 
v$backup_async_io   包括從控制文件中獲取的備份集的信息 
v$ backup_corruption   包含從控制文件中獲取的有關數(shù)據(jù)文件備份中損壞的信息。
v$ backup_datafile   包含從控制文件中獲取的備份的數(shù)據(jù)文件和備份控制文件的信息
v$ backup_device   包含支持備份設備的信息
v$backup_piece     包含從控制文件中獲取的備份塊的信息
v$backup_redolog    包含從控制文件中獲取的關于備份集的歸檔日志的信息
v$backup_set    包含從控制文件中獲取的備份集的信息
v$bgprocess 包含數(shù)據(jù)庫后臺進程信息
v$ buffer_pool   包含當前實例中所有可用緩沖池的信息
v$ buffer_pool_statistics  包含當前實例所有可用緩沖池的統(tǒng)計信息
v$ cache   包含當前實例的SGA 中的每一塊的頭部信息
v$context   包含當前對話的屬性信息。
v$controlfile   包含控制文件信息
v$ controlfile_record_section   包含控制文件記錄部分的信息
v$ copy_curruption 包含從控制問價中獲取的數(shù)據(jù)文件副本損壞的信息 
v$database  包含從控制文件中獲取的數(shù)據(jù)庫信息 
v$datafile   包含從控制文件中獲取的數(shù)據(jù)文件信息
v$datafile_copy  包括從控制文件中獲取的數(shù)據(jù)文件副本的信息
v$datafile_header  包含數(shù)據(jù)文件頭部信息
v$ db_object_cache  包含緩存在庫高速緩沖中的數(shù)據(jù)庫對象信息
v$db_pipes   包含當前數(shù)據(jù)庫中的管道信息
v$deleted_object   包含從控制文件中獲取的被刪除的歸檔日志,數(shù)據(jù)文件副本和備份塊的信息
v$ dispatcher_rate   包含調度進程速率統(tǒng)計量的信息
v$ dispatche   包含調度進程的信息
 v$ DLM_ALL_LOCKS  包含當前所有鎖
v$ DLM_CONVERT_LOCAL   包含本地鎖轉換操作所消耗的時間的信息 
v$ EVENT_NAME   包含等待時間的信息
v$ fixed_table   包含所有可用的動態(tài)性能視圖和動態(tài)性能表的信息 
v$ sysstat   包含當前實例的性能統(tǒng)計信息
v$ instance  包含當前實例的詳細信息 
v$sga  包含 SGA 區(qū)的主要組成部分的信息 
v$ sgainfo   包含SGA 區(qū)的詳細消息 
v$ parameter 包含初始化參數(shù)信息 
v$ sversion   包含Oracle 版本信息 
v$ option  包含已安裝的 Oraclette組件的選項信息 
v$session   包含當前所有會話信息 
v$process   包含當前系統(tǒng)所有進程信息 
v$ bgprocess  包含數(shù)據(jù)庫所有后臺進程信息 
v$ database  包含當前數(shù)據(jù)庫信息
v$ controlfile  包含當前數(shù)據(jù)庫所有控制文件信息
v$ datafile   包含當前數(shù)據(jù)庫所有的數(shù)據(jù)文件的信息 
v$ dbfile   包含所有數(shù)據(jù)文件的編號信息 
v$ logfile   包含當前數(shù)據(jù)庫所有的重做日志文件信息
v$ log  包含當前數(shù)據(jù)庫重做日志文件信息 
v$ log_history  包含重做日志文件切換情況的歷史信息
v$ thread  包含當前數(shù)據(jù)庫線程的信息
v$ lock 包含鎖的信息 
v$ locked_object   包含被加鎖的數(shù)據(jù)庫對象信息 
v$ rollname 包含當前處于聯(lián)機狀態(tài)的回退信息 
v$ rollstat    包含當前所有的回退段的統(tǒng)計信息 
v$ tablespace  包含當前數(shù)據(jù)庫所有表空間信息
v$ tempfile   包含當前數(shù)據(jù)庫多有的臨時數(shù)據(jù)文件的信息 ;
查看當前用戶的缺省表空間
SQL>select username,default_tablespace from user_users;
查看當前用戶的角色
SQL>select * from user_role_privs;
查看當前用戶的系統(tǒng)權限和表級權限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;
查看用戶下所有的表
SQL>select * from user_tables;
查看用戶下所有的表的列屬性
SQL>select * from USER_TAB_COLUMNS where table_name=:table_Name;
顯示用戶信息(所屬表空間)
select default_tablespace,temporary_tablespace 
from dba_users where username='GAME';
1、用戶

查看當前用戶的缺省表空間
SQL>select username,default_tablespace from user_users;

查看當前用戶的角色
SQL>select * from user_role_privs;

查看當前用戶的系統(tǒng)權限和表級權限
SQL>select * from user_sys_privs;
SQL>select * from user_tab_privs;

顯示當前會話所具有的權限
SQL>select * from session_privs;

顯示指定用戶所具有的系統(tǒng)權限
SQL>select * from dba_sys_privs where grantee='GAME';

顯示特權用戶
select * from v$pwfile_users;

顯示用戶信息(所屬表空間)
select default_tablespace,temporary_tablespace 
from dba_users where username='GAME';

顯示用戶的PROFILE
select profile from dba_users where username='GAME';

2、表

查看用戶下所有的表
SQL>select * from user_tables;

查看名稱包含log字符的表
SQL>select object_name,object_id from user_objects
where instr(object_name,'LOG')>0;

查看某表的創(chuàng)建時間
SQL>select object_name,created from user_objects where object_name=upper('&table_name');

查看某表的大小
SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper('&table_name');

查看放在Oracle的內存區(qū)里的表
SQL>select table_name,cache from user_tables where instr(cache,'Y')>0;

3、索引

查看索引個數(shù)和類別
SQL>select index_name,index_type,table_name from user_indexes order by table_name;

查看索引被索引的字段
SQL>select * from user_ind_columns where index_name=upper('&index_name');

查看索引的大小
SQL>select sum(bytes)/(1024*1024) as "size(M)" from user_segments
where segment_name=upper('&index_name');

4、序列號

查看序列號,last_number是當前值
SQL>select * from user_sequences;

5、視圖

查看視圖的名稱
SQL>select view_name from user_views;

查看創(chuàng)建視圖的select語句
SQL>set view_name,text_length from user_views;
SQL>set long 2000; 說明:可以根據(jù)視圖的text_length值設定set long 的大小
SQL>select text from user_views where view_name=upper('&view_name');

6、同義詞

查看同義詞的名稱
SQL>select * from user_synonyms;

7、約束條件

查看某表的約束條件
SQL>select constraint_name, constraint_type,search_condition, r_constraint_name
from user_constraints where table_name = upper('&table_name');

SQL>select c.constraint_name,c.constraint_type,cc.column_name
from user_constraints c,user_cons_columns cc
where c.owner = upper('&table_owner') and c.table_name = upper('&table_name')
and c.owner = cc.owner and c.constraint_name = cc.constraint_name
order by cc.position;

8、存儲函數(shù)和過程
查看函數(shù)和過程的狀態(tài)
SQL>select object_name,status from user_objects where object_type='FUNCTION';
SQL>select object_name,status from user_objects where object_type='PROCEDURE';
查看函數(shù)和過程的源代碼
SQL>select text from all_source where owner=user and name=upper('&plsql_name');

“oracle常用數(shù)據(jù)字典的知識點有哪些”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI