DB2 Connect for Linux, UNIX, and Windows 10.5 版

DB2 Connect 伺服器調整

資料庫管理程式配置檔中有多種參數可用來調整 DB2 Connect™

RQRIOBLK

RQRIOBLK 參數設定網路 I/O 區塊的大小上限。較大型區塊大小可增進大型要求的效能。 區塊大小通常不會影響小型要求的回應時間,例如對單一資料列的要求。

較大型區塊大小通常需要 DB2 Connect 伺服器有更多記憶體。如此會增加工作集大小,而造成小型工作站有大量分頁。

如果預設的 DRDA® 區塊大小 (32767) 在執行應用程式時不會造成太多分頁,請使用此預設值。 否則,請減少 I/O 區塊大小,直到沒有分頁為止。分頁開始之後,效能會明顯退化。 請使用效能監視工具(例如適用於 Linux 及 UNIX 作業系統的 vmstat 工具)來判定系統上是否發生分頁。

DIR_CACHE

DIR_CACHE 參數決定是否快取目錄資訊。 使用快取 (DIR_CACHE=YES),會讀取目錄檔並快取到記憶體中,如此一來,每次建立連線時,建立內部目錄結構以及讀取目錄檔的處理使用情況就會縮至最小。

若沒有快取 (DIR_CACHE=NO),每當您連接至資料庫時,就會從磁碟讀取適當的目錄,然後執行搜尋。 在找到所要求的項目之後,就會釋放所有與目錄搜尋相關的記憶體。

使用快取時,在 db2start 處理期間會建置共用目錄快取,當 DB2® 停止時即會釋放快取。 這個快取供所有 DB2 伺服器程序使用 (db2agent)。此外,當應用程式發出它與資料庫的第一次連線時,會建置專用應用程式目錄快取,而當應用程式結束時則會釋放快取。

每一個快取提供一個系統資料庫目錄映像檔、資料庫連線服務目錄及節點目錄。 快取是透過刪除目錄檔 I/O 以及將目錄搜尋縮至最小來減少連接成本。

如果快取的目錄更新,其變更不會立即延伸到快取中。如果在快取中找不到目錄項目,則會搜尋原始目錄。

快取會增加應用程式生命期所需的專用記憶體。若無快取,則只有在處理目錄查閱時才需要此記憶體。 DB2 對共用記憶體的整體使用會稍微增加,因為在資料庫代理程式之間共用的目錄資訊會移到共用記憶體。 快取所需的記憶體大小視每一個目錄中定義的項目數而定。

NUMDB

DB2 Connect 的行為不受舊版 NUMDB 配置參數影響,不過,從第 8 版開始這種情況已經改變。此參數指出用戶端透過 DB2 Connect 伺服器可連接的資料庫數目上限。更具體地說,即可在 DB2 Connect 伺服器上編目的不同資料庫別名的數目上限。

其他 DB2 Connect 參數

9.5 版已淘汰 AGENTPRIMAXAGENTS

用來更新 MAXAGENTS 值的指令將繼續運作,因此現存的應用程式不會岔斷,但是會忽略值。 參數名稱將不會出現在任何配置清單中。過去,允許建立於給定 DB2 分割區的代理程式總數是透過 MAXAGENTS 配置參數來控制的。現在,您可以自動化代理程式的配置。

依預設,NUM_POOLAGENTS 將設為 AUTOMATIC,並以值 100 作為預設值。另外,依預設,MAX_COORDAGENTS 將設為 AUTOMATIC,並以值 200 作為預設值。

若要從用戶端應用程式將帳戶字串傳送到 DB2 Connect 伺服器,請使用 API 特定方法來設定帳戶資訊。API 特定方法執行速度比設定 DB2ACCOUNT 環境變數更快。
IBM® Data Server Driver for JDBC and SQLJ
com.ibm.db2.jcc.DB2BaseDataSource.clientAccountingInformation 內容
IBM Data Server Provider for .NET
DB2Connection.ClientAccountingInformation 內容
CLI/ODBC
ClientAcctStr CLI/ODBC 配置關鍵字
內嵌式 SQL(C、C++ 及 COBOL)
sqlesact 函數

如果您不需要自訂的 SQLCODE 對映檔,則可以使用預設 SQLCODE 對映或關閉 SQLCODE 對映來增進效能。 預設對映檔內嵌於 DB2 Connect 檔案庫中,自訂的對映檔必須從磁碟讀取,這會影響效能。