資料庫效能直接決定應用系統回應速度。隨著資料量成長,查詢效率下降尤為明顯。本文結合實務經驗,從命中率提升、多表查詢優化、大表查詢優化、SQL 優化四大面向闡述 Oracle 查詢優化策略。
命中率 = 從記憶體取得資料的比率。影響因素四大類:
ALTER TABLE dict_table CACHE 置於 Keep Pool,提升字典存取速度。SORT_AREA_SIZE) 不足時會寫入暫存段,降低 OLTP 命中率。SELECT * FROM v$sysstat WHERE name IN ('sorts (disk)','sorts (memory)');
SORT_AREA_SIZE (如 65536 → 131072),修改 init.ora 後重啟生效。ALTER TABLE your_table CACHE 或指定 STORAGE (BUFFER_POOL KEEP)。命中率優化核心在於「減少物理讀、增加記憶體命中」。下篇將深入多表聯結、大表分頁與 SQL 寫法優化。