Oracle 中的一些重要V$ 動態效能檢視,系統檢視表和表

來源:互聯網
上載者:User

標籤:oracl   緩衝   後台   users   ddr   產生   startup   object   dual   

v$database:資料庫的資訊,如資料庫名,建立時間等。

v$instance 執行個體資訊,如執行個體名,啟動時間。

v$parameter 參數資訊,select * from v$parameter where name like ‘%name‘  ----> show parameter name(sqlplus中執行)

v$process 啟動並執行進程的資訊,如PID,SPID,以及進程的名字,如SMON,PMON在UNIX的進程名稱,在windows中會看到類似ORACLE.EXE (PMON)這樣的線程名字.

v$mystat 本session的SID號等資訊..知道了SID後可以通過查詢session相關的資訊.

v$session 串連到資料庫的session相關的資訊,如機器名,用戶端程式名稱,PID(UNIX)等.

如通過 select distinct(sid) from v$mystat;得到SID後,

可以得到這個session的相關資訊,如為這個session服務的後台進程的地址(PADDR) select * from v$session where sid=157

得到PADDR後可以得到後台進程的資訊:select * from v$process where addr = ‘3424E3BC‘

v$controlfile 控制檔案的位置資訊,可以在nomount階段查看,但沒有資料.資料庫在mount後這個視圖才有資料.

v$controlfile_record_section控制檔案裡的配置資訊.

v$datafile 資料檔案的位置資訊,資料庫在mount後這個視圖才能被查看.資料庫開啟是檢查裡面的CHECKPOINT_CHANGE#(從控制檔案得來)是否和v$datafile_header的一致.

v$datafile_header 資料檔案頭資訊.是從資料檔案頭讀取的,在做恢複的時候每當一個歸檔日誌應用之後,CHECKPOINT_CHANGE#都可以看到變化.

select dbms_flashback.get_system_change_number from dual

v$logfile 記錄檔的位置資訊,資料庫在mount後這個視圖才能被查看.

V$INSTANCE_RECOVERY:執行個體恢複時和重做日誌有關的資訊,FAST_START_MTTR_TARGET:執行個體恢複的時間限制,oracle將這個時間換算成
redo blocks數量,當log buffer中未寫入log file的redo block數量超過這個值,就會觸發增量檢查點。

(這和資料庫負載檔案的順序有關係,資料庫startup nomount時根據參數檔案載入控制檔案,startup mount後,根據控制檔案載入資料檔案和記錄檔)

v$log: 日誌的的資訊,比如當前用的是那一個日誌組。

v$sga_dynamic_components SGA各個記憶體塊的資訊,如java 池的大小,共用池的大小,資料緩衝區(在10G中是根據資料區塊的大小有不同的緩衝區的,如DEFAULT 2K buffer cache放資料區塊是2k的,DEFAULT 4K buffer cache放資料區塊是4k的)

v$pwfile_users 資料庫中具有sysdba,sysoper許可權的使用者。

v$rollstat 回退段資訊,USN回退段的編號,XACTS活動的事務數量。回退段可以從dba_rollback_segs 查看。

v$transaction 活動事務資訊,如對應的回退段(XIDUSN)是哪一個等。

v$sql:執行過的SQL語句。

v$lock:那些session佔用了什麼樣的鎖,在申請什麼樣的鎖,該session是否阻塞了別的session。

v$locked_object哪些對象被鎖住了。

 v$session_wait  查看session等待資訊:select * from v$session_wait where wait_class != ‘Idle‘看目前還在等待的session,如被阻塞的session。

v$session_wait_history:session等待的曆史資訊,只儲存離目前最近的10條記錄。

v$active_session_history:活動session(等待的或者在使用CPU)的曆史資訊,每一秒統計一次資訊。每隔一小時會記錄到磁碟,從dba_hist_active_sess_history可以看到。執行db_1\RDBMS\ADMIN\ashrpt.sql可以產生報告。

v$statistics_level:那些advisor被開啟了以及advisor做統計時候從那些view取統計資訊.

v$sga_dynamic_components:SGA各個模組的動態統計資訊. 

v$log線上日誌的資訊,那一組是正在使用的,開始使用時候的SCN.

v$archived_log 歸檔日誌的資訊,從那個SCN開始到那個SCN結束歸檔到了那一個檔案.

v$backup 那個資料表空間處於熱備份模式.alter tablespace xx begin backup的時候會把對應的SCN記錄下來.

v$statname 資料庫動態都統計那些資訊,有資訊名稱和ID,一般和v$sesstat聯合使用.

v$sesstat 一些動態統計資訊的值,如user commits,opened cursors current,redo size等等,

select  name,value from v$sesstat,v$statname 
where v$statname.STATISTIC#=v$sesstat.STATISTIC#  and v$statname.name like ‘%redo size%‘ and SID=115

和falshback相關的

v$flashback_database_logfile flashback的記錄檔相關的資訊,Oldest_flashback_scn / Oldest_flashback_time : 這兩列用來記錄可以恢複到最早的時點 .
v$flashback_database_log:日誌使用的情況
v$flashback_database_stat: flashback統計資訊.

上面三個視圖在alter database flashback on才有資料.
flashback_transaction_query
v$nls_valid_values 可以用的語言,國家和編碼設定,alter session set nls_language=american;

v$parameter_valid_values 可以設定的參數值

v$sga:sga記憶體的資訊,select sum(value)/1024/1024 from v$sga通常=sga_max_size或者sga_target

v$sga_dynamic_free_memory:sga未分配的記憶體。

v$bh DB buffer裡緩衝的資料區塊資訊。

設定用戶端編碼

NLS_LANG=AMERICAN_AMERICA.ZHS16GBK,三部分,AMERICAN語言,提示資訊,AMERICA國家影響日期格式,ZHS16GBK編碼。

查看伺服器編碼 select name,value$ from props$ where name =‘NLS_CHARACTERSET‘;

 

『以dba_和v$開頭的通常都是視圖。dba_開頭的裡面的資訊通常是靜態,資訊在檔案中(但是並不代表裡面的資訊不變化)。v$開頭的資訊通常是動態,來自控制檔案和記憶體中的資訊』

 

dba_data_files(v$datafile )資料檔案資訊,裡面不包括暫存資料表空間對應的檔案的資訊,,dba_tablespaces(v$tablespace)資料表空間資訊,dba_tables表資訊, dba_segments段資訊,dba_extents區資訊。

dba_segments:那些段儲存到了那個資料表空間,佔用了多大空間等.

select * from dba_segments where segment_name=‘TEST‘
select * from dba_segments where tablespace_name=‘USERS‘
select * from dba_segments where owner=‘YORKER‘

dba_users 使用者資訊,如預設資料表空間。dba_roles:系統裡定義的角色,如DBA(注意與sysdba的區別),CONNECT等。和使用者相關的還有一個視圖dba_profiles:資料庫中定義的profile資訊,profile是指登入嘗試次數,密碼到期時間限制等,該使用者可以有多少個session,空閑多久可以把該使用者斷掉,可以在create user時候指定。

dba_sys_privs :什麼樣的使用者或者角色授予了什麼樣的系統許可權。

dba_tab_privs看什麼樣的使用者或者角色授予了什麼樣的對象許可權。

dba_role_privs,使用者或者角色被授予了什麼樣的角色。通過角色授與權限要重新登入才能起作用。

許可權傳遞:系統許可權被收回,傳遞的許可權不收回,對象許可權被收回,傳遞的許可權也收回。

dba_constraints 約束的資訊. 表級約束Primary(P),Foreign key(R),Unique(U),Check.  資料行層級條件約束Not null(可以認為是check約束的一種,在dba_constraints 的constraint_type和check約束相同,都為‘C‘).還有對於NOT NULL的ALTER TABLE語句建立約束與其他四種(alter table tb add constraints...)是不同的:ALTER TABLE tb MODIFY col_name NOT NULL.

dba_priv_audit_opts:資料庫開啟了那些許可權審計. aduit create session;. aduit create session whenever not successful;

dba_obj_audit_opts:資料庫開啟了那些對象審計.audit select  on tb[by session/access].

dba_stmt_audit_opts:資料庫開啟的語句審計 audit table by userA

dba_audit_trail審計的資訊視圖,一部分資訊正是從表aud$的審計資訊查詢出來的,表aud$只能以sysdba許可權看.

dba_fga_audit_trail 儲存的是通過dbms_fga.add_policy 建立的細粒度審計的審計資訊.

dba_common_audit_trail儲存的是建立的標準和細粒度審計的類型資訊.

dba_rollback_segs 資料庫回退段的資訊。

dba_hist_wr_control awr(auto workload repository)產生資料庫負載資訊的控制資訊,保留時間,統計頻率。 dbms_workload_repository .modify_snapshot_settings(retention=>1440,interval=>30)修改控制。

dba_hist_snapshot:資料庫運行snapshot的曆史資訊,根據dba_hist_wr_control的控制資訊自動產生,可以通過dbms_workload_repository .create_snapshot產生。

利用db_1\RDBMS\ADMIN\awrrpt.sql可以產生資料庫運行報告。db_1\RDBMS\ADMIN\awrrpt.sql\addmrpt.sql可以產生與之對應的診斷建議報告。

dbms_workload_repository.create_baseline可以選擇某從某個snapshot到另外一個之間(這段時間DB運行良好)建立baseline來做為以後資料庫運行資訊的比較基準.

dba_hist_baseline儲存的snapshot基準資訊.

dba_thresholds 發生警告的上限值.如資料表空間用了多少警示.後台進程MMON會監視這些資訊.

dba_outstanding_alerts 最近10條警告資訊. dba_alert_history 警告的曆史資訊.

表:

system_privilege_map,系統許可權資訊,如經常用到的sysdba和sysoper都是系統許可權。還有像CREATE TABLESPACE,DROP TABLESPACE等,要注意的是drop table不是系統許可權,drop any table是系統許可權。UNLIMITED TABLESPACE許可權不能授予給角色,也就意味著DBA角色的使用者也需要單獨額外授予UNLIMITED TABLESPAC許可權。

資料庫的這些視圖,表定義可以在下面的視圖中查到:

select * from dict
select * from dict_columns
select * from v$fixed_table
select * from v$fixed_view_definition

SELECT ‘*TABLE: ‘ || TABLE_NAME, COMMENTS
FROM ALL_TAB_COMMENTS
WHERE OWNER = ‘SYS‘
AND TABLE_NAME = ‘USER_SYNONYMS‘
UNION
SELECT ‘COL: ‘ || COLUMN_NAME, COMMENTS
FROM ALL_COL_COMMENTS
WHERE OWNER = ‘SYS‘
AND TABLE_NAME = ‘USER_SYNONYMS‘ ;

Oracle 中的一些重要V$ 動態效能檢視,系統檢視表和表

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.