Oracle 11g資料庫緩慢診斷案例
運維同事反應資料庫執行緩慢
登入資料庫的作業系統,透過 top 命令檢視系統負載,發現有兩個程式使用的 CPU 均很高,且這兩個程式都是 oracle 的
登入資料庫,檢視這兩個程式對應的會話資訊,發現其中一個會話為 SQL 查詢,已經執行了40多分鐘,找到其中的 SQL_ID
select s.SID,s.SERIAL#,MACHINE,TERMINAL, OSUSER, SCHEMANAME, PROGRAM,MODULE,ACTION,CLIENT_INFO,
decode(s.COMMAND,3,'SELECT',s.COMMAND) COMMAND,STATUS,SQL_ID,SQL_ADDRESS,SQL_EXEC_START,
DECODE(STATUS,'ACTIVE',LAST_CALL_ET,NULL) "SQL執行時間",EVENT,STATE,SECONDS_IN_WAIT,SERVICE_NAME
from V$SESSION s where s.USERNAME is not null AND WAIT_CLASS <> 'Idle' and spid = &1;
SQL_ID
cf5qahutb4wqb
檢視 SQL 的內容
SELECT SQL_ID,SQL_TEXT FROM V$SQLAREA WHERE SQL_ID = 'cf5qahutb4wqb';
BEGIN P_GOLD_DATEUSER(:1 , :2 , :3 , :4 , :5 , :6 , :7 ); END;
分析找到的 PL SQL 程式碼,找到裡面的一條 BAD SQL
登入資料庫的作業系統,透過 top 命令檢視系統負載,發現有兩個程式使用的 CPU 均很高,且這兩個程式都是 oracle 的
登入資料庫,檢視這兩個程式對應的會話資訊,發現其中一個會話為 SQL 查詢,已經執行了40多分鐘,找到其中的 SQL_ID
select s.SID,s.SERIAL#,MACHINE,TERMINAL, OSUSER, SCHEMANAME, PROGRAM,MODULE,ACTION,CLIENT_INFO,
decode(s.COMMAND,3,'SELECT',s.COMMAND) COMMAND,STATUS,SQL_ID,SQL_ADDRESS,SQL_EXEC_START,
DECODE(STATUS,'ACTIVE',LAST_CALL_ET,NULL) "SQL執行時間",EVENT,STATE,SECONDS_IN_WAIT,SERVICE_NAME
from V$SESSION s where s.USERNAME is not null AND WAIT_CLASS <> 'Idle' and spid = &1;
SQL_ID
cf5qahutb4wqb
檢視 SQL 的內容
SELECT SQL_ID,SQL_TEXT FROM V$SQLAREA WHERE SQL_ID = 'cf5qahutb4wqb';
BEGIN P_GOLD_DATEUSER(:1 , :2 , :3 , :4 , :5 , :6 , :7 ); END;
分析找到的 PL SQL 程式碼,找到裡面的一條 BAD SQL
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-1874135/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何診斷oracle資料庫執行緩慢或hang住的問題Oracle資料庫
- Oracle___診斷案例__資料庫的exp故障Oracle資料庫
- 【Oracle】資料庫hang 診斷Oracle資料庫
- Oracle配置資料庫診斷Oracle資料庫
- ORACLE診斷案例Oracle
- Solaris Linux SSH緩慢診斷與解決Linux
- 資料庫連線緩慢資料庫
- 某物流系統資料庫故障診斷案例分析資料庫
- PostgreSQL、KingBase 資料庫 ORDER BY LIMIT 查詢緩慢案例SQL資料庫MIT
- 診斷Oracle資料庫Hanging問題Oracle資料庫
- Oracle如何診斷遠端訪問資料庫慢/超時等問題小結Oracle資料庫
- 一次Oracle診斷案例-Spfile案例Oracle
- Oracle診斷案例-Sql_traceOracleSQL
- mysql資料庫效能診斷MySql資料庫
- Oracle 12.1.0.2 impdp匯入慢診斷Oracle
- dbms_addm執行oracle資料庫診斷Oracle資料庫
- 資料庫診斷一例資料庫
- Oracle資料庫非同步IO導致查詢響應緩慢Oracle資料庫非同步
- Oracle ADDM --dbms_addm執行oracle資料庫診斷Oracle資料庫
- 一次ORACLE IO效能診斷案例Oracle
- 某公司oracle 效能調優診斷案例Oracle
- Oracle診斷案例-Job任務停止執行Oracle
- 一次Oracle診斷案例-SGA與SwapOracle
- EM自動任務導致資料庫緩慢資料庫
- 資料庫異常智慧分析與診斷資料庫
- ODX 診斷資料庫轉換工具 — DDC資料庫
- 案例 - EBS SQL效能診斷SQL
- Oracle診斷案例:Job任務停止執行(轉)Oracle
- Part II 診斷和優化資料庫效能優化資料庫
- 大語言模型與資料庫故障診斷模型資料庫
- MySQL資料庫診斷:InnoDB關機問題MySql資料庫
- 使用awr來診斷資料庫效能問題資料庫
- 利用hanganalyz/systemstate dump診斷資料庫hang資料庫
- 自管理的資料庫:自動效能診斷資料庫
- 使用SQL_TRACE進行資料庫診斷SQL資料庫
- oracle 8i資料庫ORA-01092的診斷Oracle資料庫
- Oracle系統執行慢及資源消耗多問題診斷 [final]Oracle
- 【資料庫資料恢復】斷電導致Oracle資料庫資料丟失的資料恢復案例資料庫資料恢復Oracle