使用DB2look重新創(chuàng)建優(yōu)化器訪問計劃
步驟 3:當(dāng)模擬整個數(shù)據(jù)庫時,從生產(chǎn)中收集所有對象的 DDL 信息,并在測試中運(yùn)行 db2look。
在生產(chǎn)中:db2look -d sample -e -a -m -o db2look.out
在測試中:db2 -tvf db2look.out
為了看到輸出結(jié)果,可發(fā)出:db2look -tvf db2look.out > db2look.results
一旦完成了以上步驟,就請確保在測試中將 dbheap 數(shù)據(jù)庫配置參數(shù)設(shè)置為與生產(chǎn)中相同的值。
步驟 4:使用 db2exfmt 從測試和生產(chǎn)中獲得訪問計劃,并確保下列內(nèi)容與生產(chǎn)中的相同:Database Context:----------------Parallelism: NoneCPU Speed: 4.762804e-07Comm Speed: 100Buffer Pool size: 128500Sort Heap size: 128Database Heap size: 5120Lock List size: 12250Maximum Lock List: 10Average Applications: 4Locks Available: 78400Package Context:---------------SQL Type: DynamicOptimization Level: 3Blocking: Block All CursorsIsolation Level: Cursor Stability---STATEMENT 1 SECTION 201 ----QUERYNO: 1QUERYTAG: CLPStatement Type: SelectUpdatable: NoDeletable: NoQuery Degree: 1
現(xiàn)在,查看訪問計劃。假如它們是相同的,那么您就成功地重新創(chuàng)建了訪問計劃。還請注重,您還應(yīng)查看 db2exfmt 輸出結(jié)尾以驗(yàn)證表空間配置是匹配的。
示例 4:生產(chǎn):MPP,4 個邏輯分區(qū)/ 16 個物理分區(qū)。
測試:MPP,4 個邏輯分區(qū),每個邏輯分區(qū)中只有 4 臺可用的物理機(jī)器。
查詢中所涉及的表、視圖/MQT。
本示例中,該模擬可能不會準(zhǔn)確工作。測試和生產(chǎn)中的分區(qū)數(shù)目必須相同。然而,您仍可以嘗試重新創(chuàng)建,只是它不會正確。
因此,您必須向測試環(huán)境添加 16*4=64 個分區(qū),以便重新創(chuàng)建正確。測試環(huán)境中不需要 16 臺物理機(jī)器;即您可以具有 4 臺物理機(jī)器,每臺物理機(jī)器具有 16 個邏輯分區(qū)。這由您來決定,但總共必須有 64 個邏輯分區(qū),與生產(chǎn)中相同。
相關(guān)文章:
1. MySQL創(chuàng)建索引需要了解的2. 快速解決DB2創(chuàng)建存儲過程時所遇到的錯誤3. Navicat for MySQL創(chuàng)建視圖的方法4. Oracle建表與創(chuàng)建序列詳細(xì)實(shí)例5. 單機(jī)創(chuàng)建物理Oracle9istandby數(shù)據(jù)庫6. 創(chuàng)建一個空的IBM DB2 ECO數(shù)據(jù)庫7. python之sqlalchemy創(chuàng)建表的實(shí)例詳解8. Microsoft Office Access創(chuàng)建分組報表的方法9. ORACLE創(chuàng)建DBlink的過程及使用方法10. 為DB2數(shù)據(jù)庫創(chuàng)建表空間過程
