db2生成執行計畫,監控及優化

2021-09-02 07:03:36 字數 585 閱讀 2356

一,生成指定sql的執行計畫

1. 連線到db2

db2 connect to aep user wcsuser using wcsuser1

2.  生成執行計畫相關表

db2 -tvf sqllib/misc/explain.ddl

3.  生成執行計畫並匯出檔案 

a)   db2 "explain plan for ***"

b)   db2exfmt -1 -d aep -e wcsuser -o sql.pln

二、利用quest等工具監控資料庫(top sql, io activity, lock)

需要先開啟監控功能

db2 update dbm cfg using dft_mon_stmt on

db2 update dbm cfg using dft_mon_bufpool on

db2 update dbm cfg using dft_mon_uow on

db2 update dbm cfg using dft_mon_sort on

db2 update dbm cfg using dft_mon_table on

db2 生成表的匯出指令碼

使用 shell 指令碼生成並匯出所有資料的 dml 指令碼,並將其重定向到 srcdb1 export.sql 檔案中。對於熟悉 db2 的使用者來說,應該知道資料庫中建立的每個表 檢視 別名均對應 syscat.tables 中一行記錄。因此可以通過相應的資料庫 select 語句就可以獲取所有...

DB2檢視執行計畫的幾種方式

1.檢視儲存過程中sql的執行計畫 已知儲存過程名稱為procname1,模式名schema1,第一步,select specificname from syscat.proceduces where procname proname1 and procschema schema1 假設獲得spec...

使用DB2優化概要強制修改DB2的執行計畫

db2中sql語句的執行計畫是db2優化器根據統計資訊來制定的,有的時候,需要人工干預,比如需要強制使用索引掃瞄。這時候可以使用優化概要來實現。下面的例子中,sql原本使用了表掃瞄,在使用了優化概要強制規定使用索引掃瞄之後,執行計畫變成了索引掃瞄。db2level informational tok...