Sun Java System Application Server Enterprise Edition 8.1 2005Q2 管理指南

關於 JDBC 連線池

Procedure建立 JDBC 連線池

JDBC 連線池是針對特定資料庫的一組可重複使用的連線。使用 管理主控台 建立連線池時,管理員實際上是在定義與特定資料庫的連線的各個方面。

開始之前

建立池之前,您必須首先安裝並整合 JDBC 驅動程式。請參閱整合 JDBC 驅動程式

建置 [建立連線池] 頁面時,必須輸入特定於 JDBC 驅動程式和資料庫供應商的特定資料。繼續操作之前,請先收集以下資訊:

  1. 在 管理主控台 的樹狀結構檢視 (左窗格) 中,展開 [資源] 節點。

  2. 在 [資源] 節點下,展開 [JDBC] 節點。

  3. 在 [JDBC] 節點下,選取 [連線池] 節點。

  4. 在 [連線池] 頁面中,按一下 [新建]。

  5. 在 [建立連線池] 的第一個頁面中,指定以下一般設定:

    1. 在 [名稱] 欄位中,輸入池的邏輯名稱。

      建立 JDBC 資源時指定此名稱。

    2. 從 [資源類型] 組合方塊中選取一個項目。

    3. 從 [資料庫供應商] 組合方塊中選取一個項目。

  6. 按 [下一步]。

  7. 在 [建立連線池] 的第二個頁面中,為 [DataSource 類別名稱] 欄位指定值。

    如果 JDBC 驅動程式具有與在上一頁中指定的資源類型和資料庫供應商相應的 DataSource 類別,則系統會提供 [DataSource 類別名稱] 欄位的值。

  8. 按 [下一步]。

  9. 在 [建立連線池] 的第三個也就是最後一個頁面中,執行以下作業:

    1. 在 [一般設定] 區段中,檢驗各個值是否正確。

    2. 對於 [池設定]、[連線驗證] 和 [作業事件隔絕] 區段中的欄位,保留預設值。

      您可以在以後非常方便地變更這些設定。請參閱編輯 JDBC 連線池

    3. 在 [附加特性] 表中,新增必需的特性,例如資料庫名稱 (URL)、使用者名稱和密碼。

  10. 按一下 [完成]。

等效的 asadmin 指令

create-jdbc-connection-pool

Procedure編輯 JDBC 連線池

[編輯 JDBC 連線池] 頁面為您提供了變更現有池的所有設定 (池的名稱除外) 的方法。

  1. 在樹形元件中,展開 [資源] 節點。

  2. 在 [資源] 節點下,展開 [JDBC] 節點。

  3. 在 [JDBC] 節點下,展開 [連線池] 節點。

  4. 選擇要編輯的池的節點。

  5. 在 [編輯 JDBC 連線池] 頁面中,進行必要的變更。

    1. 變更一般設定。

      一般設定的值取決於安裝的特定 JDBC 驅動程式。這些設定是 Java 程式設計語言中的類別名稱或介面名稱。

      參數 

      說明 

      DataSource 類別名稱 

      實作 DataSource 和/或 XADataSource API 的供應商特定的類別名稱。該類別位於 JDBC 驅動程式中。

      資源類型 

      選項包括 javax.sql.DataSource (僅限於本機作業事件)、javax.sql.XADataSource (全域作業事件) 和 java.sql.ConnectionPoolDataSource (本機作業事件,可能會改善效能)。

    2. 變更池設定。

      一組實體資料庫連線保存在池中。應用程式請求連線時,將從池中移除該連線;而應用程式釋放該連線之後,連線將傳回到池中。

      參數 

      說明 

      池的初始大小和最小大小 

      池中連線的最小數目。該值還確定了首次建立池或應用程式伺服器啟動時置於池中的連線的數目。 

      池的最大大小 

      池中連線的最大數目。 

      池設定大小數量 

      當池向最小池大小收縮時,將成批調整大小。此值確定批次中的連線數目。將該值設置過大會延遲連線循環;而將該值設置過小則會導致效率降低。 

      閒置逾時 

      連線可以在儲存區中閒置的最大時間 (以秒表示)。一旦超過此時間,即從池中移除該連線。 

      最長等待時間 

      請求連線的應用程式在達到連線逾時之前等待的時間。由於預設等待時間過長,應用程式可能會出現無限期當機的情況。 

    3. 變更連線驗證設定。

      選擇性地,應用程式伺服器可以在將連線傳送給應用程式之前驗證連線。當由於網路出現故障或資料庫伺服器當機造成資料庫不可用時,此驗證可允許 Application Server 自動重新建立資料庫連線。連線驗證會耗用額外的時間,並會略微降低效能。

      參數 

      說明 

      連線驗證 

      選取 [需要] 核取方塊以啟用連線驗證。 

      驗證方法 

      應用程式伺服器可以使用三種方法來驗證資料庫連線:auto-commit、metadata 和 table。 

      auto-commit 和 metadata - Application Server 透過呼叫 con.getAutoCommit() 方法和 con.getMetaData() 方法來驗證連線。但是,由於許多 JDBC 驅動程式快取了這些呼叫的結果,因此這兩種方法無法始終提供可靠的驗證。請與驅動程式供應商進行核實,以確定這些呼叫是否被快取。

      table - 應用程式將查詢指定的資料庫表格。此表必須存在並且可以存取,但不要求表的列數。請勿使用包含許多列的現有表或經常存取的表。 

      表格名稱 

      如果從 [驗證方法] 組合方塊中選取了表,請在此處指定資料庫表格的名稱。 

      一旦失敗 

      選取標記為 [關閉所有連線] 的核取方塊之後,如果單一連線失敗,Application Server 將關閉池中的所有連線,然後重新建立這些連線。如果未選取此核取方塊,則僅在要使用個別連線時才會重新建立這些連線。 

    4. 變更作業事件隔離設定。

      由於許多使用者通常可以同步運作地存取一個資料庫,因此可能出現一個作業事件在更新資料而另一個作業事件嘗試讀取同一資料的情況。作業事件的隔絕層級定義了正在更新的資料對於其他作業事件的可視程度。如需有關隔絕層級的詳細資訊,請參閱資料庫供應商的文件。

      參數 

      說明 

      作業事件隔絕 

      使您可以為該池的連線選取作業事件隔絕層級。如果不指定此參數,連線將使用 JDBC 驅動程式提供的預設隔絕層級進行作業。 

      受保證隔絕層級 

      該項僅在指定了隔絕層級的情況下才適用。如果選取 [受保證] 核取方塊,則從池中獲取的所有連線都具有相同的隔絕層級。例如,如果上次使用連線時程式化 (使用 con.setTransactionIsolation) 變更了連線的隔離層級,這種機制會將狀態變更回指定的隔離層級。

    5. 變更特性。

      在 [附加特性] 表中,可以指定資料庫名稱 (URL)、使用者名稱和密碼等特性。由於隨資料庫供應商的不同,特性也會有所不同,因此請查閱供應商文件以取得詳細資訊。

  6. 按一下 [儲存]。

另請參閱

Procedure驗證連線池設定

  1. 啟動資料庫伺服器。

  2. 按一下 [Ping]。

    管理主控台 將嘗試連線至資料庫。如果顯示錯誤訊息,請檢查資料庫伺服器是否已重新啟動。

Procedure刪除 JDBC 連線池

  1. 在樹形元件中,展開 [資源] 節點。

  2. 在 [資源] 節點下,展開 [JDBC] 節點。

  3. 在 [JDBC] 節點下,選取 [連線池] 節點。

  4. 在 [連線池] 頁面中,選取要刪除的池的核取方塊。

  5. 按一下 [刪除]。

等效的 asadmin 指令

delete-jdbc-connection-pool