oracle 學習筆記---效能優化(1)
1. 查詢正在執行語句的執行計劃(也就是實際語句執行計劃)
select * from v$sql_plan where hash_value = (select sql_hash_value from v$session where sid = 1111);
其中id和parent_id表示了執行數的結構,數值最大的為最先執行
比如
ID PARENT_ID
-------------
0
1 0
2 1
3 2
4 3
5 4
6 3
則執行計劃樹為
0
1
2
3
6 4
5
2.如何設定自動跟蹤
用system登入
執行$ORACLE_HOME/rdbms/admin/utlxplan.sql建立計劃表
執行$ORACLE_HOME/sqlplus/admin/plustrce.sql建立plustrace角色
如果想計劃表讓每個使用者都能使用,則
SQL>create public synonym plan_table for plan_table;
SQL> grant all on plan_table to public;
如果想讓自動跟蹤的角色讓每個使用者都能使用,則
SQL> grant plustrace to public;
通過如下語句開啟/停止跟蹤
SET AUTOTRACE ON |OFF | ON EXPLAIN | ON STATISTICS | TRACEONLY | TRACEONLY EXPLAIN
3.如何跟蹤自己的會話或者是別人的會話
跟蹤自己的會話很簡單
Alter session set sql_trace true|false
Or
Exec dbms_session.set_sql_trace(TRUE);
如果跟蹤別人的會話,需要呼叫一個包
exec dbms_system.set_sql_trace_in_session(sid,serial#,true|false)
跟蹤的資訊在user_dump_dest 目錄下可以找到或通過如下指令碼獲得檔名稱(適用於Win環境,如果是unix需要做一定修改)
SELECT p1.value||'\'||p2.value||'_ora_'||p.spid||'.ora' filename
FROM
v$process p,
v$session s,
v$parameter p1,
v$parameter p2
WHERE p1.name = 'user_dump_dest'
AND p2.name = 'db_name'
AND p.addr = s.paddr
AND s.audsid = USERENV ('SESSIONID')
最後,可以通過Tkprof來解析跟蹤檔案,如
Tkprof 原檔案 目標檔案 sys=n
4.怎麼設定整個資料庫系統跟蹤
其實文件上的alter system set sql_trace=true是不成功的,但是可以通過設定事件來完成這個工作,作用相等
alter system set events
'10046 trace name context forever,level 1';
如果關閉跟蹤,可以用如下語句
alter system set events
'10046 trace name context off';
其中的level 1與上面的8都是跟蹤級別
level 1:跟蹤SQL語句,等於sql_trace=true
level 4:包括變數的詳細資訊
level 8:包括等待事件
level 12:包括繫結變數與等待事件
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/235507/viewspace-670204/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle 學習筆記---效能優化學習(1)Oracle筆記優化
- ORACLE學習筆記--效能優化FAQ。Oracle筆記優化
- oracle 學習筆記---效能優化(2)Oracle筆記優化
- oracle 學習筆記---效能優化(3)Oracle筆記優化
- oracle 學習筆記---效能優化(4)Oracle筆記優化
- oracle 學習筆記---效能優化(5)Oracle筆記優化
- oracle 學習筆記---效能優化(6)Oracle筆記優化
- oracle 學習筆記---效能優化(7)Oracle筆記優化
- Oracle效能優化視訊學習筆記-效能優化概念(一)Oracle優化筆記
- Oracle效能優化視訊學習筆記-效能優化概念(二)Oracle優化筆記
- iOS學習筆記-TableView效能優化篇1iOS筆記View優化
- HTTPS 效能優化學習筆記HTTP優化筆記
- 強烈推薦:ORACLE學習筆記--效能優化(ZT)Oracle筆記優化
- ORACLE效能優化筆記Oracle優化筆記
- Oracle效能優化視訊學習筆記-診斷和調優工具Oracle優化筆記
- ORACLE學習筆記--效能最佳化一Oracle筆記
- ORACLE學習筆記--效能最佳化四Oracle筆記
- ORACLE學習筆記--效能最佳化三Oracle筆記
- ORACLE學習筆記--效能最佳化二Oracle筆記
- Oracle效能優化視訊學習筆記-動態調整SGAOracle優化筆記
- Nginx效能優化(學習筆記二十五)Nginx優化筆記
- iOS學習筆記-TableView效能優化篇2iOS筆記View優化
- Oracle學習筆記1Oracle筆記
- Oracle學習筆記-1Oracle筆記
- 斜率優化學習筆記優化筆記
- mysql優化學習筆記MySql優化筆記
- oracle statpack優化學習(1)Oracle優化
- oracle 學習總結(效能優化)Oracle優化
- Android效能優化相關的學習記錄(1)Android優化
- Oracle動態效能檢視學習筆記(1)_v$sysstatOracle筆記
- 學習筆記-《基於Oracle的SQL優化》-第一章-1筆記OracleSQL優化
- Mysql 優化(學習筆記二十)MySql優化筆記
- oracle筆記整理13——效能調優之SQL優化Oracle筆記SQL優化
- Web 效能優化筆記Web優化筆記
- Oracle效能優化順序表名稱來選擇最有效的學習筆記Oracle優化筆記
- Oracle效能優化視訊學習筆記-資料庫配置和I/O問題Oracle優化筆記資料庫
- 高效能運算學習筆記(1)筆記
- MySQL優化學習筆記之索引MySql優化筆記索引