程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 針對基礎設計、性能和可管理性的DB2最佳實踐

針對基礎設計、性能和可管理性的DB2最佳實踐

編輯:DB2教程

在過去幾年中,產生了很多著作論述關於 DB2 設計和實現的最佳實踐,包括大量圖書和文章。這些著作深入探討了如何設計 DB2 並將其集成到應用程序中。為了提供一些基本指導以讓客戶和業務合作伙伴了解這些內容,本文匯編了在使用 IBM® DB2® 技術設計和實現應用程序時需要考慮的一系列最佳實踐。本文的目標是獲得更加有效和高效的 DB2 實現。本文不會為現有 DB2 客戶和獨立軟件開發商(ISV)提供詳細的性能最佳實踐。

簡介

DB2 for Linux, UNIX, and Windows 提供了一個數據庫平台,可以在這個平台上構建健壯的、隨需應變的業務應用程序。DB2 提供了關系數據的優化管理,而且在 DB2 9 中還提供了 XML 數據的優化管理。

本文假設您了解關系數據庫系統(RDBMS)的基本原理,並且用 DB2 或其他 RDBMS 實現過應用程序。本文還提供了一些常用的最佳實踐,可以幫助您進行基礎的性能設計以及創建易於操作和維護的 RDBMS 環境。同時,本文不會考慮數據庫設計的所有領域,比如安全性、備份/恢復以及故障轉移。本文還列出了其他領域的一些常用技巧,比如性能,但是不會詳細討論這些主題領域的數據庫分析和設計問題。本文還提供了一些附加資源,希望為您提供關於所有 DB2 主題領域的更廣泛信息。本文列出的常用最佳實踐可以簡化與 DB2 相關的應用程序的部署、管理以及性能改善,從而為負責應用程序部署的人員提供幫助。

一般性建議

大量 DB2 技術材料都能夠為負責用 DB2 for Linux, UNIX, and Windows 實現應用程序的人員提供幫助。無論是對新手還是有經驗的從業者來說,對各種來源的信息進行分類都是一件比較麻煩的事。建議從以下站點開始查找網上可用的 DB2 技術材料。

Information Management developerWorks 專區 包含本文,也包含大量其他的 DB2 文章、許多技術材料、演示代碼和可下載的產品試用版。Information Management developerWorks Technical Library 包含了廣泛的內容,包括技術文章、產品文檔和教程。

可獲得大量與 DB2 有關的著作。與 DB2 相關的出版物的最佳來源之一就是 IBM Press。具體包括以下圖書:

“Understand DB2: Learning Visually with Examples”。該書的 第二版 是針對 DB2 V9.5 編寫的,將在 2007 年年末面市。

“DB2 V8 Handbook”

“IBM DB2 Version 9 New Features”

此外,還可以查閱 IBM Redbooks,其中包含了 DB2 和相關 Information Management 產品的技術性技巧。

對於業務合作伙伴,可以從 IBM Virtual Innovation Center(VIC)獲得包括 DB2 在內的 IBM 產品的有用信息。您需要 注冊 成為 PartnerWorld 成員才能訪問 VIC。要訪問 DB2 Course Material,注冊之後在 VIC 主頁面右側底端的 Shortcuts 下選擇 All courses by product。然後將跳轉到一個標題為 “Product Selections” 的 Web 頁面。根據提示訪問與產品相關的課程材料。

設計和實現技巧

利用 DB2 Migration Tool Kit

當將數據庫從一個 RDBMS 遷移到 DB2 時,可以對支持的源 RDBMS 使用 DB2 Migration Tool Kit(MTK),這些 RDBMS 包括 SQL Server、Oracle、Sybase 和 MySQL。表、視圖、索引、RI 約束、用戶定義的函數(UDF)以及一些過程都可以通過此工具遷移。UDF 和過程的遷移質量依賴於源代碼的復雜性。還需要進行評估,以確定是否應該以遷移後的 UDF 和過程為基礎優化(refine)代碼,或者從頭重新編碼。使用 MTK 時,需要考慮一些重要的數據類型:

始終匹配 DB2 列數據類型與應用程序變量數據類型或 JDBC set 方法。這可以提高數據訪問效率並潛在地消除一些 SQL 錯誤。

使用滿足應用程序需求的最小數據類型。例如,如果合適的話,使用 SMALLINT(2 字節),而不使用 INTEGER(4 字節)。在一些情況下,MTK 會將一個源 DBMS 數據類型遷移到 DECIMAL (x,0)。為了提高處理效率和盡可能地節約空間,應該考慮用 INTEGER 或 BIGINT 代替 DECIMAL (x,0) 數據類型。但是,當做這個決定時,必須將運算結果的數據類型考慮在內。

在過去幾年中,產生了很多著作論述關於 DB2 設計和實現的最佳實踐,包括大量圖書和文章。這些著作深入探討了如何設計 DB2 並將其集成到應用程序中。為了提供一些基本指導以讓客戶和業務合作伙伴了解這些內容,本文匯編了在使用 IBM® DB2® 技術設計和實現應用程序時需要考慮的一系列最佳實踐。本文的目標是獲得更加有效和高效的 DB2 實現。本文不會為現有 DB2 客戶和獨立軟件開發商(ISV)提供詳細的性能最佳實踐。

簡介

DB2 for Linux, UNIX, and Windows 提供了一個數據庫平台,可以在這個平台上構建健壯的、隨需應變的業務應用程序。DB2 提供了關系數據的優化管理,而且在 DB2 9 中還提供了 XML 數據的優化管理。

本文假設您了解關系數據庫系統(RDBMS)的基本原理,並且用 DB2 或其他 RDBMS 實現過應用程序。本文還提供了一些常用的最佳實踐,可以幫助您進行基礎的性能設計以及創建易於操作和維護的 RDBMS 環境。同時,本文不會考慮數據庫設計的所有領域,比如安全性、備份/恢復以及故障轉移。本文還列出了其他領域的一些常用技巧,比如性能,但是不會詳細討論這些主題領域的數據庫分析和設計問題。本文還提供了一些附加資源,希望為您提供關於所有 DB2 主題領域的更廣泛信息。本文列出的常用最佳實踐可以簡化與 DB2 相關的應用程序的部署、管理以及性能改善,從而為負責應用程序部署的人員提供幫助。

一般性建議

大量 DB2 技術材料都能夠為負責用 DB2 for Linux, UNIX, and Windows 實現應用程序的人員提供幫助。無論是對新手還是有經驗的從業者來說,對各種來源的信息進行分類都是一件比較麻煩的事。建議從以下站點開始查找網上可用的 DB2 技術材料。

Information Management developerWorks 專區 包含本文,也包含大量其他的 DB2 文章、許多技術材料、演示代碼和可下載的產品試用版。Information Management developerWorks Technical Library 包含了廣泛的內容,包括技術文章、產品文檔和教程。

可獲得大量與 DB2 有關的著作。與 DB2 相關的出版物的最佳來源之一就是 IBM Press。具體包括以下圖書:

“Understand DB2: Learning Visually with Examples”。該書的 第二版 是針對 DB2 V9.5 編寫的,將在 2007 年年末面市。

“DB2 V8 Handbook”

“IBM DB2 Version 9 New Features”

此外,還可以查閱 IBM Redbooks,其中包含了 DB2 和相關 Information Management 產品的技術性技巧。

對於業務合作伙伴,可以從 IBM Virtual Innovation Center(VIC)獲得包括 DB2 在內的 IBM 產品的有用信息。您需要 注冊 成為 PartnerWorld 成員才能訪問 VIC。要訪問 DB2 Course Material,注冊之後在 VIC 主頁面右側底端的 Shortcuts 下選擇 All courses by product。然後將跳轉到一個標題為 “Product Selections” 的 Web 頁面。根據提示訪問與產品相關的課程材料。

設計和實現技巧

利用 DB2 Migration Tool Kit

當將數據庫從一個 RDBMS 遷移到 DB2 時,可以對支持的源 RDBMS 使用 DB2 Migration Tool Kit(MTK),這些 RDBMS 包括 SQL Server、Oracle、Sybase 和 MySQL。表、視圖、索引、RI 約束、用戶定義的函數(UDF)以及一些過程都可以通過此工具遷移。UDF 和過程的遷移質量依賴於源代碼的復雜性。還需要進行評估,以確定是否應該以遷移後的 UDF 和過程為基礎優化(refine)代碼,或者從頭重新編碼。使用 MTK 時,需要考慮一些重要的數據類型:

始終匹配 DB2 列數據類型與應用程序變量數據類型或 JDBC set 方法。這可以提高數據訪問效率並潛在地消除一些 SQL 錯誤。

使用滿足應用程序需求的最小數據類型。例如,如果合適的話,使用 SMALLINT(2 字節),而不使用 INTEGER(4 字節)。在一些情況下,MTK 會將一個源 DBMS 數據類型遷移到 DECIMAL (x,0)。為了提高處理效率和盡可能地節約空間,應該考慮用 INTEGER 或 BIGINT 代替 DECIMAL (x,0) 數據類型。但是,當做這個決定時,必須將運算結果的數據類型考慮在內。

數據庫配置

從 AUTOCONFIGURE 開始:配置數據庫的一個好起點是使用 Configuration Advisor 或者 AUTOCONFIGURE 命令。決定配置參數時,必須了解如何使用數據庫,以及與正在配置的數據庫相關的應用程序有什麼樣的性能需求。

盡可能使用自動設置:許多配置參數都可以設置為自動。當設置為自動時,DB2 自動調整這些參數,以滿足系統當前的資源需求。

根據需要調整重要參數:根據特定系統的需求,當決定調整初始數據庫配置時,有一些重要因素需要考慮:

用 DB2 創建的默認數據庫擁有一個 4K 頁面大小的表空間。最低限度情況下,應該創建一個 32K 頁面大小的緩沖池,一個 32K 頁面大小的系統臨時表空間,以及一個 32K 頁面大小的用戶表空間。這樣可以確保能夠在 32K 頁面大小的表空間中創建任何行大小超過 4K 字節的用戶表。

對於一般的產品系統來說,緩沖池的初始配置值簡直太小了。為緩沖池分配更多的內存空間在大多數情況下都是有好處的,DB2 的默認值只能當作最小值。在 DB2 9 中,借助自調優內存管理器(self tuning memory manager,STMM)(將會在 運行時和可管理性技巧 小節中介紹),DB2 可以決定最佳的緩沖池值。

對於 DB2 Version 8,默認的鎖列表大小(用於鎖的內存堆)為 100 個 4K 的緩沖區。即使對於只涉及少量連接和數據的低級測試,這都會引起從行鎖到表鎖的鎖升級問題,從而導致鎖定問題。對於 DB2 Version 8,應將鎖列表大小至少增大到 1000,可以通過 db2 update db cfg for DBNAME 命令,將參數設置為 1000 來實現。對於 DB2 9,可以使用 STMM 將鎖列表參數值設置為 AUTOMATIC,這將會避免大多數鎖內存問題。

要獲得關於緩沖池和表空間大小的詳細討論,請參考 “DB2 Basics: Table Spaces and Buffer Pools”(developerWorks,2003 年 10 月)。

選擇、更新和插入效率的一般規則

盡可能使用 APPEND ON:要提高插入處理的效率,如果不需要物理集中表數據,那麼在表定義中使用 APPEND ON。注意,刪除活動或更新活動可以實現空間重用,這將改變行大小,並且在表重組之後才會發生。要獲得更多的插入設計技巧,請參考 “Tips for improving INSERT performance”(developerWorks,2004 年 3 月)。

回顧 select * 的用法:一般情況下,建議避免使用 select *。這樣做能夠最小化針對指定列需要檢索的數據量。此外,如果使用 select *,更改數據庫模式和表定義可能需要更改應用程序代碼,以處理新列和刪除的列。

將頻繁更新的列集中起來:當更新某一行時,DB2 會記錄進行更改的所有列,因此將頻繁更新的列放到一起可以減少 DB2 的記錄工作。這只是一個有關性能的小建議,因此不應為實現它而進行重大的應用程序或數據庫設計修改。

利用 SQL 存儲過程降低網絡開銷

通過最小化到客戶機的結果集通信量,SQL 存儲過程能夠降低網絡開銷,而且存儲過程也能夠改善靜態(預准備的)SQL 的性能。存儲過程的其他益處還包括減少客戶端處理(通過更多地使用 DB 服務器資源)以及 DB2 的代碼管理。使用存儲過程的其他技巧還包括:

盡量保持存儲過程小而簡單。每個過程應該只做一件事。用單個過程處理多個類型的業務邏輯將會使調優、修改和理解更加困難。

如果可能,使用存儲過程創建可重用的業務邏輯 “組件”。

“DB2 SQL PL: Essential Guide for DB2 UDB on Linux, UNIX, Windows, i5/OS, and z/OS, 2nd Edition” 包含針對 SQL 存儲過程的有用的設計和編碼信息。

最大化並發性

對於好的數據庫性能來說,最大化並發性非常重要。下面列出了一些詳細的建議:

有 3 個注冊變量會影響到並發性。這些變量可以改善並發性,但是也會影響到應用程序的行為。建議在 DB2 開發流程的初期啟用這些注冊變量,從而在實現並發性增強後執行全面測試中的所有單元測試。要獲得更多信息,請參考 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 中的 “Evaluate Uncommitted Data” 和 “Performance Variables” 部分。

DB2_EVALUNCOMMITTED=YES:對於 V8,從 V8.1 FP9(也即 V8.2 FP2)開始,最佳的設置是 =YES_DEFERISCANFETCH。對於 V9,只需指定 =YES。

DB2_SKIPDELETED=ON

DB2_SKIPINSERTED=ON

選擇隔離級別可以為應用程序提供可接受的最佳並發性。有幾種方式可用來指定隔離級別,比如對 SQL 語句(只應用於該語句)使用 CURRENT ISOLATION 專用寄存器(應用於連接),以及對 JDBC 連接對象進行指定(應用於連接)。

通過監控鎖升級的發生(通過 DB2 狀態監控器、db2diag.log、Windows 事件浏覽器或其他性能監控器,或者利用 DB2 STMM),確保鎖列表和 maxlock DB 配置參數足夠大。鎖列表大小不足將會導致 DB2 嘗試將大量行鎖 “升級” 到單個表級別的鎖。如果升級失敗,就會導致死鎖;如果升級成功,又會極大地影響到並發性。

最大化並發性的一個例外是,在已知某些時間內只有單個連接訪問表的情況。可以考慮使用 ALTER TABLE <name> LOCKSIZE TABLE 來最小化鎖定(和相關的內存或 CPU 使用)。請謹慎使用。

“Lock avoidance in DB2 UDB V8”(developerWorks,2005 年 9 月)介紹了大量相關概念。

最小化死鎖

在整個應用程序中,總是按相同次序訪問資源可以最小化死鎖。例如,如果一個應用程序組件將要訪問表 A,然後是表 B,接著是表 C,而另一個應用程序組件需要訪問表 A 和 C,那麼第 2 個組件應該遵循先 A 後 C 的訪問次序。

對於 DB2 Version 8,導致死鎖的一個常見原因是鎖列表數據庫配置參數的大小不足,尤其是使用默認值時。請參閱本文的 最大化並發性 小節。如果出現這種情況,增加鎖列表大小就可以解決問題。默認情況下 DB2 9 使用了 STMM,它會調整鎖列表大小以避免可能由此引起的鎖升級和死鎖。

確保參照完整性(referential integrity,RI)關系中的依賴表擁有與外鍵匹配的索引。

利用連接池

利用連接池,包括由應用服務器管理的連接池,如果不在應用服務器環境中運行,則使用由應用程序管理的連接池。打開和關閉連接的過程開銷較大,會影響到應用程序或數據庫的性能,而使用連接池就可以消除大部分這樣的開銷。

如果使用了大量的連接,那麼請使用 DB2 的連接集中器(connection concentrator)功能。該功能只允許較少的 DB2 “後端” 連接為應用程序連接服務,從而節省了內存。

動態或靜態 SQL 選擇

現在,動態 SQL 比靜態 SQL 更加廣泛。通常,動態 SQL 更容易實現,而且通過語句重用,能獲得跟靜態 SQL 一樣的性能。然而,仍然有一些適合靜態 SQL 的情形,比如涉及到安全性因素、針對某些 OLTP 工作負載最大化性能等情況。

要獲取關於何時使用靜態 SQL 的全面信息,請參閱 DB2 在線文檔。

要了解特定的 Java™ 環境需要考慮的因素,包括使用 SQLJ 創建靜態 SQL,請查閱 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 的 “Introduction to SQLJ” 部分。

要了解特定 CLI/ODBC 環境需要考慮的因素,包括使用靜態 profiling 創建靜態 SQL,請查閱 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 的 “Creating static SQL with CLI/ODBC/JDBC Static Profiling” 部分。

最小化 DB2 語句的 PREPARE 成本

只需在 SQL 語句中使用一次參數標記,然後就可以多次重用。更多信息請參閱 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 中的 “Parameter Markers” 部分。

對於占用資源很多的 SQL 語句,查看實際的變量值(字符)而不是參數標記也許對優化器較為有益。實現此目的一種簡單方式就是在代碼中使用字符,而不是使用參數標記。但是,這將導致語句緩存發生過多的插入活動,潛在影響性能和內存使用,因為僅有一個字符值不同的 SQL 語句就會被當作不同的語句。對於一個包中的靜態 SQL(比如 SQL 存儲過程),通過 REOPT ALWAYS 綁定或預編譯選項,可以使用參數標記同時允許通過值進行優化。對於 DB2 9 和 動態 SQL,也可以通過一個全局或語句級別的優化配置來指定 REOPT ALWAYS。

盡可能有效地使用 JDBC

通過使用一些基本原則,可以更有效地使用 JDBC。首先,確保已經針對列數據類型使用恰當的 setxxx 方法將數據綁定到參數標記。這會避免數據類型轉換開銷過高和可能的 SQL 數據類型失配錯誤。其次,盡可能避免使用可滾動的結果集設置,因為服務器會實現臨時表來支持這種設置。使用這種設置會影響到性能,尤其是使用大的結果集設置時。

使用 Design Advisor 建議索引

一旦開發出了一種模式並且可以使用,將 SQL 語句作為輸入使用 Design Advisor 來建議索引。對於經常使用的查詢以及大型或復雜的查詢,這一點尤其重要。

此外,針對由完整應用程序測試填充的動態 SQL 緩存重新運行 Design Advisor。這允許根據實際工作負載和 SQL 語句的執行頻率建議索引。確保在 Design Advisor 執行之前運行了 runstats。

另一個方法可能需要較多的操作,但是允許利用潛在的(“虛擬的”)索引查看訪問計劃。可通過以下方法實現:

發出 SQL 語句 SET CURRENT EXPLAIN MODE RECOMMEND INDEXES。

在同一個會話中執行一條 SQL 語句,這會導致用建議的(“虛擬的”)索引填充 ADVISE_INDEX 表。

執行 SQL 語句 SET CURRENT EXPLAIN MODE EVALUATE INDEXES。

執行同一條 SQL 語句。現在將用優化器根據實際和虛擬索引選擇的訪問計劃來填充解釋表。

最後,利用當前和建議的索引使用諸如 db2exfmt 的解釋工具查看訪問計劃。

改善日志性能

編寫 DB2 日志的速度是一個重要的 DB2 性能因素(依賴於數據更新的速率)。以下是一些幫助改善 DB2 記錄日志性能的技巧:

禁用自動提交(autocommit),在許多應用程序環境中這是默認啟動的,比如 JDBC。每次提交都會記錄一個同步日志。但是如果應用程序在每條 SQL 語句執行之後都需要提交,那麼請不要禁用自動提交。

如果沒有必要,不要記錄大數據對象(CLOB、DBCLOB 和 BLOB)。

將 BD2 日志隔離到專門的磁盤存儲器上(不要與任何其他內容共享)。特別地,確保沒有將日志保存在實例目錄的默認位置,因為默認情況下數據庫本身也位於這裡。

為日志分配一個具有快速寫入緩存的磁盤存儲器。

將日志緩沖區大小增加到 256 個頁面或更大。

使用訪問計劃信息幫助優化 SQL 語句

了解如何使用訪問計劃信息優化 SQL 語句。訪問計劃描述訪問路徑,這些路徑是 DB2 優化器為 SQL 語句訪問數據而選擇的。可視化解釋(Visual Explain)是查看訪問計劃的最簡單方式,通過 DB2 Control Center 實現。db2expln 和 db2exfmt 命令用更簡潔的方式提供了廣泛的信息,在需要針對性能頻繁分析 SQL 語句時,通常使用這兩個命令。

db2expln 使用起來比 db2exfmt 稍微簡單,因為您能夠直接將一條語句傳遞給它,以進行解釋。同樣,使用 db2expln 更容易分析一個包中所有的靜態 SQL。db2exfmt 需要已經將一條 SQL 語句解釋到這些表中,並設置 EXPLAIN 表中信息內容的格式。db2exfmt 通常用於廣泛的性能分析,因為它提供了大部分優化器信息。

要了解關於使用 Explain 工具的更多信息,請查閱 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 的 “Visual Explain overvIEw”、“db2expln - SQL and XQuery Explain Command” 和 “db2exfmt - Explain table format command” 部分。

運行時和可管理性技巧

專用的數據庫服務器

如果可能,將服務器專門用於運行數據庫。這樣,無需關心未知的額外工作負載就可以執行數據庫調優。

DB2 的自動功能

考慮使用 DB2 的自動功能,尤其是 DB2 9 支持的 STMM,以及 DB2 Version 8 和 DB2 9 都支持的 Automatic Maintenance(尤其是自動的 runstats)。這些功能不但會減少監控和維護數據庫所需的操作,也能對數據庫進行更加有效的調優。

避免 I/O 瓶頸

只要可能,最低限度為每個 CPU 分配 6-10 個磁盤, 而且將所有文件分散到所有可用的磁盤上(索引、數據、表空間和臨時表空間)。務必考慮使用自動存儲,從 DB2 Version 8.1 FP9 開始的版本都支持這項功能。始終將 DB2 日志放在與表空間隔離的磁盤,以避免關鍵數據庫組件之間的 I/O 爭用。

考慮在部署前關閉監控

在應用程序部署前禁用監控,這可能節省大約 5% 的監控開銷。某種程度上,在生產環境中始終打開監控功能則物有所值。當調試問題或分析性能時應該打開監控。但是,如果需要將數據庫復制到十幾個或者數百個設備上時,一定要在部署前關閉監控。

RUNSTATS 命令很有用

當對數據量或數據內容進行重大更改時,定期運行 RUNSTATS。即使表的行數保持一致,使用由 RUNSTATS 更新的統計信息來更改數據內容可以產生不同的、也許更好的訪問路徑。 執行 RUNSTATS 之後,包含靜態 SQL 的 DB2 包應該被定期地重新綁定(通過 db2rbind 命令),以確保靜態 SQL 使用了最優的訪問路徑。

REORGCHK 命令也能提供幫助

定期運行 REORGCHK,並執行推薦的 REORGs。與 RUNSTATS 類似,當發生重大的數據更改時,應該始終運行 REORGCHK。

收集快照數據

定期收集快照數據。快照數據能夠提供緩沖池使用情況、排序堆使用情況、鎖定和表讀/寫活動的定期視圖。關於動態 SQL 活動(通過 db2 get snapshot for dynamic sql on dbname 命令來實現)和總體數據庫活動(通過 db2 get snapshot for database on dbname 命令來實現)(用實際數據庫名稱替換 dbname)的視圖都很有用。通過定期記錄快照並進行分析,可以發現發生的反常活動和趨勢。在探測趨勢時,這種定期使用快照的方法特別有用。針對更長期的監控,可以考慮使用 SQL 表函數訪問快照數據。當將數據放回到 DB2 時,存儲和比較大量快照數據就容易得多了。

了解如何使用 db2pd 工具

該工具可用於進行問題診斷以及對 DB2 中發生的事件進行一般分析。該工具也可以用來監控 DB2 日志使用情況以及 DB2 緩沖池使用情況。

學習如何使用 DB2 編目

DB2 編目是一個非常有價值的信息來源。建議用戶通過一組 SYSCAT 模式的視圖來訪問編目。在 DB2 9 中,關於表的狀態和使用情況的有用信息可以使用一個叫做 SYSIBMADM.ADMINTABINFO 的新視圖來找到。關於 DB2 編目的更多信息請參閱 “IBM DB2 Database for Linux, UNIX, and Windows Information Center” 的 “Roadmap to the Catalog VIEws” 部分。

定期應用 DB2 修訂包

始終使用最新的 DB2 產品補丁是預防問題的一個重要步驟。制定一個定期更新 DB2 修訂包應用程序的計劃,即使系統中沒有錯誤也是如此。和任何軟件產品一樣,DB2 並不是完美的,而且 IBM 幾乎每季度都會發行修訂包,以設法改善軟件的可靠性。應用修訂包可以主動阻止潛在的問題,也有助於最小化與 DB2 相關的應用系統的宕機時間。

結束語

本文提供了一些關於基礎設計、實現、運行時以及可管理性的指導,以幫助您在 DB2 中實現應用程序。盡管沒有提供實現這些指導的所有必須細節,但仍然希望本文為您提供了一些重要的考慮因素。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved