傳統看命中率已不足,**I/O 為性能最大瓶頸**。從 OS 層等待發現資料庫與系統資源配置不合理。
%usr %sys %wio %idle
%wio > 35% → I/O 瓶頸,CPU 在等待磁碟
%idle ≈ 0 → CPU 飽和,需檢查高佔用進程
Linux %system 近似 %wio。
pi (page in) ≠ 0 → 換頁發生。free 極小、記憶體利用率 > 80% → 記憶體壓力。%util 接近 100%、await > 20ms、svctm 高 → 磁碟飽和。-- 取得 OS 進程號 (PID/SPID) 後
SELECT a.username, a.machine, a.program, a.sid, a.serial#,
a.status, c.piece, c.sql_text
FROM v$session a, v$process b, v$sqltext c
WHERE b.spid = '<OS_PID>'
AND b.addr = a.paddr
AND a.sql_address = c.address(+)
ORDER BY c.piece;
<OS_PID>。DBMS_STATS)。EXPLAIN PLAN / DBMS_XPLAN.DISPLAY_CURSOR)。| 平台 | CPU/記憶體 | I/O | 進程排查 |
|---|---|---|---|
| Linux | sar, vmstat, top, htop | iostat, sar -d | ps -ef, pidstat, strace |
| Solaris | sar, vmstat, prstat | iostat, sar -d | ps, prstat, truss |
| AIX | sar, vmstat, topas | iostat, sar -d | ps, topas, truss |
| HP-UX | sar, vmstat, glance | sar -d, glance | ps, glance, tusc |