首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> DB2 資料庫 >> DB2 教學

DB2 效能調優基礎:查詢執行次數最多的 SQL 識別與分析

     編輯:DB2 教學

核心 SQL

SELECT *
FROM SYSIBMADM.SNAPDYN_SQL
ORDER BY NUM_EXECUTIONS DESC, TOTAL_SYS_CPU_TIME_MS DESC
FETCH FIRST 20 ROWS ONLY;
  • NUM_EXECUTIONS:執行次數(識別高頻 SQL)。
  • TOTAL_SYS_CPU_TIME_MS:總 CPU 時間(識別耗資源 SQL)。
  • 輸出導向檔案:>> d:\num_executions.txt

結果解讀與行動

  1. 基礎資料表查詢次數極高 → 正常,若非基礎表則檢查應用是否在迴圈中重複查詢。
  2. 高 CPU + 高執行次數 → 優先優化目標,檢查索引、重寫 SQL、調整優化等級。
  3. 低執行次數但高 CPU → 大型報表/批次作業,考慮離線執行或資料分割。

進階擴充

  • 結合 SNAPDYN_SQL 的 STMT_TEXT 取得完整 SQL 文本。
  • 定期排程收集,建立執行基線,偵測異常激增。
  • 搭配 db2exfmt 或 db2expln 深入分析前 N 名 SQL 執行計畫。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved