使用DB2look重新創(chuàng)建優(yōu)化器訪問計劃
步驟 3:當(dāng)模擬整個數(shù)據(jù)庫時,從生產(chǎn)中收集所有對象的 DDL 信息,并在測試中運行 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é)尾以驗證表空間配置是匹配的。
示例 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. Microsoft Office Access創(chuàng)建一個表的子表的方法2. 單機(jī)創(chuàng)建物理Oracle9istandby數(shù)據(jù)庫3. 在Oracle iAS 10g中創(chuàng)建Report Server4. 創(chuàng)建一個空的IBM DB2 ECO數(shù)據(jù)庫的方法5. mysql 觸發(fā)器創(chuàng)建與使用方法示例6. MySQL入門教程4 —— 創(chuàng)建表并將數(shù)據(jù)裝入表7. MySQL創(chuàng)建索引需要了解的8. MySQL入門教程3 —— 創(chuàng)建、選擇并使用數(shù)據(jù)庫9. Microsoft Office Access創(chuàng)建分組報表的方法10. SQL Server 2008阻止保存要求重新創(chuàng)建表的更改
