第4章
この章では、Novell exteNd Application Serverがデータ階層にあるリレーショナルデータベースとEIS (企業情報システム)にアクセスして使用する方法について説明します。また、これらのデータソースへのアクセスを設定する方法についても説明します。トピックは次のとおりです。
この節では、データ階層に保存されているデータベースと他のコンポーネントがアプリケーションサーバによって使用されるさまざまな方法について説明します。
アプリケーションサーバでは、システム管理全体に対してSilverMasterというマスタデータベースカタログを使用します。SilverMasterデータベースは、サーバのインストール中に作成され、サーバに自動的に追加されます。SilverMasterは、カラムの自動増分が可能な「サポートされている」タイプのデータベースであれば、どのデータベースでもかまいません。
サポートされているデータベースタイプの完全なリストについては、リリースノートを参照してください。
SilverMasterデータベースには、次のシステム管理機能があります。
SilverMasterカタログには、システム管理用にアプリケーションサーバで使用される内部テーブルが含まれます。これらのテーブルは、アプリケーションサーバによる使用のために予約されています。これらのテーブルのリストについては、を参照してください。
SilverMasterに対するデフォルトの許可 デフォルトのインストール後、ユーザには、SilverMasterデータベースとディレクトリのトップレベルに対する読み込みアクセスが与えられます。これにより、ユーザは、既存の展開データベースにログインしてアクセスできるようになります。
ユーザは、許可が与えられるまで、データベースを追加または削除したり、展開されたJARにアクセスしたりすることはできません。異なるタイプの操作に対して別個のポートを設定した場合は、管理ポートを使用してデータベース設定を更新する必要があります。
SilverMasterデータベースのトラブルシュートの詳細については、SilverMasterInitプログラムの使用を参照してください。
SilverMasterデータベースの移動 SilverMasterデータベースを、最初にインストールされたホストから移動する場合、アプリケーションサーバでは、新しい接続場所を把握する必要があります。SilverMasterの接続場所情報を更新する最も簡単な方法は、SilverMasterデータベースを移動した後でサーバのインストールプログラムを再実行することです。
注記: データベースによっては、接続パラメータを更新する必要があります(たとえば、ODBC、JDBC、またはOracle TNSを使用します)。
サーバのインストールプログラムでは、画面の指示に従って、移動したSilverMasterデータベースを指定します。SilverMasterInitを実行するオプションである[新規サーバ環境設定ファイルのインストール]を画面で必ず選択してください。SilverMasterInitを実行する必要はありません。
SilverMasterInitを実行してSilverMasterプロパティを初期化する場合は、Silver Securityユーザとグループを再作成し、展開データベースを手動で追加する必要があります。アプリケーションサーバを再起動する前に、SilverMasterへの接続を(別のアプリケーションを使用して)テストすることは常に推奨されます。
J2EEアプリケーションは、アーカイブファイルに保存されます。アプリケーションサーバでは、SilverMaster、またはアプリケーションサーバに「追加」されているリレーショナルデータベースにJ2EEアーカイブを展開します。データベースは、SMCまたはSilverCmdを使用して(展開データベースの設定を参照)、アプリケーションサーバに追加します。
追加できるデータベースは、アプリケーションサーバによってサポートされているタイプのみです。 サポートされているデータベースタイプの完全なリストについては、リリースノートを参照してください。
サーバにデータベースを追加すると行われること サーバにデータベースを追加すると、データベースへの接続方法とデータベースの使用方法をアプリケーションサーバで判断できるように、エントリがSilverMasterに作成され、システムテーブルもデータベースに追加されます。システムテーブルは通常のデータベーステーブルですが、アプリケーションサーバによる使用のために予約されています。サーバでは、これらのシステムテーブルにアーカイブと関連メタデータを保存します。
(企業データを含む)既存のデータベースにアプリケーションを展開したり、アプリケーション展開の対象として作成したデータベースを追加したりできます。
注記: UNIXプラットフォームに展開データベースを追加する場合は、データベースの場所をAGCLASSPATH環境変数に追加して、サーバを再起動してからデータベースを追加する必要があります。AGCLASSPATHの詳細については、AGCLASSPATH変数の設定を参照してください。
制限された環境におけるデータベースの追加 制限された運用環境でアプリケーションサーバが実行されている場合、データベースを追加(または削除)する前に、自分自身を認証する必要があります。制限された環境では、ユーザ(サーバ管理者以外)は、許可が与えられない限り、データを追加することはできません。
データへのアクセス アプリケーションサーバでは、追加されたデータベースとしてではなく、接続プールから企業データにアクセスします。アクセスする企業データも含んでいるデータベースにJ2EEアーカイブを展開する場合は、このデータベースに対して接続プールを作成する必要があります。
接続プールの追加の詳細については、接続プールの設定を参照してください。
展開データベースの選択 J2EEアプリケーションは、サポートされているリレーショナルデータベース、またはSilverMasterデータベースに展開できます。次の表は、SilverMasterまたは別の展開データベースを選択するいくつかの理由について説明しています。
J2EEアプリケーション(WAR、EAR、EJB JARなど)では、「リソース参照」としてアクセスするデータソースを展開記述子で定義します。アーカイブをサーバに展開する場合は、展開ツールを使用して、サーバに対して使用可能なデータソースにリソース参照をマップします。
管理者として、データソースがサーバに対して使用可能であり、そのデータソースへの適切な許可がサーバにあることを確認しなければなりません。データソースをJ2EEアプリケーションに対して使用できるようにするには、「接続プール」を作成します。接続プールは、SMCまたはSilverCmdを使用して作成できます(接続プールの設定を参照)。
アプリケーションサーバでは、ネイティブJDBCドライバまたはJDBC-ODBCブリッジドライバを使用してリレーショナルデータベースにアクセスします。
JDBCは標準のAPI (Application Program Interface)であり、アプリケーションサーバなどのJavaアプリケーションに対しリレーショナルデータベースへのSQLアクセスを許可します。アプリケーションでは、JDBCドライバに対してJDBCコールを実行します。このドライバは、このコールを基盤となるデータベースのAPIに変換します。Javaランタイムシステムには、サポートされているデータベースへのODBCドライバを使用した接続をJDBCに許可するODBCブリッジが用意されています。
JDBCドライバには、次の4つのタイプがあります。
次の図は、サポートされている各JDBCドライバタイプのコンポーネントを示します。
JDBCを通してデータベースにアクセスするには、アプリケーションサーバで適切なJDBCドライバのJARファイルを検出する必要があります。つまり、これらのJARを、サーバのクラスパスに追加する必要があります。これを実行する方法は、セットアップするデータベースアクセスの種類によって異なります。
この節では、これらの設定タスクに関する一般的なガイドラインについて説明します。DBMSの詳細については、アプリケーションサーバの『データベース設定ガイド』で対応するデータベース設定の章を参照してください。
SilverMasterの場合 SilverMasterデータベースへのアクセスを設定する場合、サーバのクラスパスへのJDBCドライバJARを追加するには、次の操作を実行します。
他のデータベースアクセスの場合 他のデータベースアクセス(SilverMaster以外)を設定する場合に、異なるデータベースドライバが必要なときは、アプリケーションサーバのクラスパスにこれらのJDBCドライバJARファイルを手動で追加する必要があります。たとえば、SilverMasterのDB2にアクセスする際に、Oracleに対する接続プールも作成する必要がある場合に、このような状況が発生します。
この操作を実行する一般的な方法は、次のとおりです。
オペレーティングシステム |
説明 |
---|---|
NetWare |
setenvを使用して、JDBCドライバファイルを含むようにAGCLASSPATH環境変数を設定する |
UNIX |
.agprofileファイル(サーバのルートディレクトリにあります)を編集し、AGCLASSPATH変数がこのJAR情報で設定されるようにする |
Windows |
システム環境変数AGCLASSPATHを編集し、必要なJARを追加する |
アプリケーションサーバに対するデータベースアクセスを設定する場合は、データベースベンダによって提供されたツールをまず使用して、各接続をテストすることが推奨されます。これらの接続が有効であることを把握しておくと、後にアプリケーションサーバからのアクセスをトラブルシュートする必要性が生じた場合に時間を節約できます。
リレーショナルデータベースは、J2EEアーカイブの展開レポジトリとして使用したり、アプリケーションサーバのSilverMasterとして使用したりできます。使用するデータベースには既存のデータを含むことができます。または、展開用としてのみデータベースを作成することもできます。この節では、展開データベースをサーバで使用できるようにする方法について説明します。この節には、次のトピックが含まれています。
展開データベースを設定する詳細については、『データベース設定ガイド』のDBMSに関する章を参照してください。
次の表は、アプリケーションサーバでデータベースを使用できるようにするために一般的に実行しなければならない内容について説明しています。
タスク |
説明 |
---|---|
アプリケーションサーバに対してデータベースユーザアカウントを設定する |
データベースアカウント許可を追加および変更するためのDBMSユーティリティ(Sybase Central、Microsoft Enterprise Manager、Oracle Server Manager、Informix Control Centerなど)を使用します。 アプリケーションサーバには、各データベースへの接続時に使用するデータベースアカウントが必要です。ユーザアカウント(Agsmithなど)には、CREATE TABLE、INSERT、UPDATE、およびDELETEの許可が必要です。 データベースが使用される方法を簡単に判断できるように、SilverMasterおよび各展開データベースに対して異なるアカウントを設定することをお勧めします。この方法を使用すると、パフォーマンスに関する問題を容易に識別してトラブルシュートできるようになります。
|
データベースに対してODBCデータソースを設定する |
ODBCコントロールパネル(Windowsの場合のみ。ODBC接続は、UNIXで現在サポートされていません)。 |
アプリケーションサーバマシン上のDBMSクライアントソフトウェアを設定する |
ネイティブデータベースソフトウェア(Oracle SQL-Net、Microsoft SQL Serverクライアント、Informix CLIなど)を使用します。 |
JDBCドライバをインストールする |
ネイティブDBMSインストーラを使用して、JDBCドライバをアプリケーションサーバマシン(jConnectなど)にインストールします。 |
SilverMasterまたは展開データベースとして使用するために特定のデータベースタイプを設定する方法の詳細については、『データベース設定ガイド』で該当する環境設定に関する章を参照してください。
注記: データベースに「SilverStream」という名前を付けることはできません。
J2EEアーカイブをサーバに展開する前に、ターゲット展開データベースを追加する必要があります(SilverMasterに展開しない限り)。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
次の表を使用して、データベースに関する情報を入力します。ヘルプが必要な場合は、『データベース設定ガイド』のDBMSに関する章を参照してください。
フィールド |
指定する内容 |
---|---|
データベース名 |
データベースの名前を入力します。ODBCデータベースの場合、データベース名は、既存のODBCデータソース名でなければなりません。 |
ユーザ名およびパスワード |
ネイティブデータベースへのデータベースユーザ接続に対してアプリケーションサーバで使用できる、ユーザ名とパスワードのペアを入力します。これらの値をnullにすることはできません。 このユーザ名はネイティブデータベースで認識されており、適切な読み込み/書き込み許可が必要です。 注記: 管理者は、各展開データベースに対して固有なユーザを定義する必要があります。 |
データベースプラットフォーム |
サポートされているデータベースプラットフォームのリストから選択します。 |
ドライバセット |
リストからドライバセットを選択します。 ドライバセットは、選択したデータベースプラットフォームに固有です。データベースタイプに対して推奨されるドライバセットは、デフォルトで表示されます。 ドライバセットによっては、追加のパラメータを指定する必要があります。このようなドライバセット(名前が「Novell exteNd」で開始しないドライバセット)の1つを選択した場合は、別の会社のドライバセットの使用を参照してください。 |
データテーブルとは別にシステムテーブルを保存する |
他のアプリケーションによってアクセスされる運用データベースを使用する場合は、アプリケーションサーバのシステムテーブルをこのデータベースに追加することはお勧めできません。 システムテーブルは、アプリケーションサーバによって使用されます。 このオプションを使用すると、アプリケーションサーバのシステムテーブルを別のデータベースに保存できます。 このオプションをオンにして[次へ]をクリックした場合、システムテーブルデータベースに名前を付けるように指示するパネルが表示されます (このデータベースはすでに存在していなければなりません)。 |
テーブルのサブセットのみを含める |
追加するデータベースに使用しないテーブルが含まれている場合があります。このオプションをオンにすると、サーバで使用可能にするテーブルのサブセットを指定できます。 このオプションをオンにして[次へ]をクリックすると、リストボックスが2つあるパネルが表示されます。上のボックスでは、使用する各テーブルに手動で名前を付けることができます。下のボックスでは、テーブルのセットを示すパターンを指定できます。たとえば、「cust」で開始するすべてのテーブルを使用するには、「cust%」のように指定できます。 |
別の会社のドライバセットの使用 アプリケーションサーバに付属しているドライバセットを使用しない場合は、追加の情報を入力する必要があります。
次の表は、このパネルの各フィールドについて説明しています。
詳細については、JDBCドライバのマニュアルを参照してください。
結果 データベースを追加すると、サーバによってエントリがSilverMasterデータベースに追加され、アプリケーションサーバのシステムテーブルもデータベースに追加されます(これは、システムテーブルを個別に維持することを指定しない場合です。このように指定した場合は、システムテーブルが他のデータベースに追加されます)。
コマンドラインからのデータベースの追加 サーバへのデータベースの追加は、コマンドラインから、またはAddDatabase SilverCmdを使用してバッチファイルから実行できます。
J2EEアプリケーションの展開 J2EEアプリケーションを展開する準備が整ったら、『機能ガイド』のJ2EEアーカイブ展開に関する章を参照してください。
アプリケーションサーバに追加したデータベースを移動した場合は、そのデータベースをサーバから削除して、サーバに再度追加します。
データベースとアプリケーションサーバの間の接続を維持する必要がない場合は、データベースをサーバから削除できます。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
結果 サーバからデータベース接続を削除すると、アプリケーションサーバによってエントリがSilverMasterから削除されますが、データベース自体は完全にそのままの状態で残されます(アプリケーションサーバのシステムテーブルも含まれます)。
コマンドラインからのデータベースの削除 サーバからのデータベースの削除は、コマンドラインから、またはRemoveDatabase SilverCmdを使用してバッチファイルから実行できます。
サーバに追加されているデータベースを設定するには、SMCを使用します。たとえば、SMCを使用すると、データベース情報を同期化したり、アイドル接続を削除したりすることができます。異なるタイプの操作に対して個別のポートを設定した場合は、管理ポートを使用してデータベース設定を更新する必要があります。
注記: 異なるタイプのユーザや操作に対して個別のポートを設定した場合、SMCを開始するには「管理」ポートを指定する必要があります。
フィールド |
説明 |
---|---|
ユーザ名およびパスワード |
データベースへのデータベースユーザ接続に対してアプリケーションサーバで使用できる、ユーザ名とパスワードのペア。 ユーザ名はデータベースで認識され、適切な読み込み/書き込み権が与えられている必要があります。 |
最小接続 |
このデータベースに対するサーバ接続の最小数。 |
最大接続数 |
このデータベースに対するサーバ接続の最大数。 |
データベースの削除 |
選択したデータベースをサーバから削除するボタン。サーバからの展開データベースの削除を参照してください。 |
データベーススキーマの同期化 |
アプリケーションサーバのデータベースイメージをデータベース構造への変更に同期させることができるようにするボタン。 アプリケーションサーバでは、データベーススキーマの独自のイメージを維持します。データベースの構造を変更した場合は、このボタンをクリックして、サーバのデータベースイメージを更新します。
|
アイドル接続の削除 |
現在使用されていないデータベース接続を解放するボタン。 サーバによって接続がさらに必要とされる場合は、接続プールが、定義した最大接続数の範囲内で、必要に応じて自動的に再拡張されます。アイドル接続を削除すると、サーバを再起動せずに、他のアプリケーションで使用するデータベース接続を(少なくとも一時的に)いくつか解放できます。
|
システムデータベースプロパティ |
選択したデータベースによってそのアプリケーションサーバシステムテーブルが別のデータベースに保存される場合(このプロパティは、データベースをサーバに追加するときに指定します)にのみ表示されるボタン。 選択したデータベースに対するアプリケーションサーバのシステムテーブルを保存するデータベースに関する情報を表示するには、このボタンをクリックします。
|
データベーススキーマの同期化 サーバでキャッシュされたテーブル、ビュー、およびキーの定義が現在のデータベース構造に一致するように、サーバメタデータと現在のデータベーススキーマを同期化しなければならない場合があります。 この処理は、デフォルトでは確認されません。 強制的に確認するには、-dbcheckコマンドラインオプションを使用します。
注記: また、-noexitondbcheckコマンドラインオプションを使用すると、サーバの起動中にエラーを表示できます。エラーが発生した場合は、データベースを同期化する必要があります。詳細については、同期化されていないデータベースを参照してください。
データベースを同期化する要求が受信されると、サーバでは次の操作が実行されます。
リレーショナルデータベースまたはEISシステムの企業データは、接続プールを介してアプリケーションサーバで使用できるようにします。この節では、接続プールを作成して維持する方法について説明します。この節には、次のトピックが含まれています。
接続プールを作成する前に、次の表で概説されている管理タスクを実行しておく必要があります。
データソースタイプ |
管理タスク |
---|---|
リレーショナルデータベース |
JDBCドライバをサーバにインストールする アプリケーションで使用するユーザIDとパスワードを作成する 「JDBC接続プール」を作成する |
EIS |
RAR (Resource Adapter Archive)をサーバに展開する アプリケーションで使用するユーザIDとパスワードを作成する 「コネクタ接続プール」を作成する |
アプリケーションサーバでは、接続プールを使用して、JDBCからリレーショナルデータベースの企業データへ、あるいはサーバに展開されたRARから1つまたは複数のEISの企業データへアクセスできます。
この節では、SMCのJDBC接続プールの追加ウィザードを使用してJDBC接続プールを追加する方法について説明します。JDBC接続プールを作成する場合は、JDBCドライバがシステムにインストールされている必要があります(これによって、アプリケーションサーバでJDBC 1.0およびJDBC 2.0ドライバが両方ともサポートされます)。
この節は、次のトピックで構成されています。
コマンドラインからの追加 JDBC接続はコマンドラインから追加することもできます。コマンドラインからの接続プールの追加を参照してください。
ウィザードパネルと、これらのパネルが表示される順序は、データベースへのアクセスに使用するJDBCドライバのタイプによって異なります。次の表は、ウィザードで作成するJDBC接続プールのタイプに基づいたウィザードでの手順を示します。各パネルで入力しなければならない値の詳細については、リンクをクリックしてください。
作成するJDBC接続プールの対象 |
実行する操作 |
---|---|
exteNd *に対して事前設定されているJDBCドライバ |
|
JDBC 1.0ユーザ定義のドライバ |
|
JDBC 2.0ユーザ定義のドライバ |
* 事前設定済みのドライバとは、さらに高レベルのサービスを提供するアプリケーションサーバ用のドライバです。 事前設定済みのドライバの場合、アプリケーションサーバでは、ドライバによって返されたエラーコードを処理する方法を認識しており、ドライバのバグを対処することもできます。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
操作を続行する方法の詳細については、パネルの順序を参照してください。
この節では、次のタスクの参照情報について説明します。
このパネルは、事前設定済みドライバまたはユーザ定義ドライバのどちらを使用しているのかを指定するために使用されます。
フィールド |
指定する内容 |
---|---|
事前に設定済みのexteNd 設定 |
使用しているJDBCドライバが[データベースプラットフォーム]および[ドライバセット]のドロップダウンに一覧表示されている場合はこのオプションをオンにします。 |
ユーザ指定のドライバ |
事前に設定されていないJDBCの接続プールを作成する場合はこのオプションをオンにします。 |
事前設定済みのexteNd 設定を選択した場合、残りのフィールドを次のように入力します。
このパネルは、ターゲットデータベースへの接続にサーバで使用するプールの名前およびユーザ名とパスワードの組み合わせを指定するために使用されます。
このパネルでは、入力するJDBCドライバに関する情報を指定できます。
このパネルでは、JDBCドライバでサポートできる接続プールに対して追加のプロパティを指定できます。
プロパティを入力するには、[追加]を選択し、次の表を使用してパネルを完了します。
フィールド |
指定する内容 |
---|---|
プロパティ名 |
ManagedConnectionFactoryプロパティの名前 |
プロパティ値 |
ManagedConnectionFactoryプロパティの値 |
注記: これらの値は、使用するドライバによって決定されます。 これらのプロパティの詳細については、ベンダのマニュアルを参照してください。
このパネルでは、接続プールの接続値とタイムアウト値を指定できます。
このパネルでは、JDBCドライバのバージョンを指定できます。
フィールド |
指定する内容 |
---|---|
JDBC 1.0 |
JDBCドライバでJDBC 1.0をサポートしている場合にこのオプションをオンにします。 |
JDBC 2.0 |
JDBCドライバでJDBC 2.0をサポートしている場合にこのオプションをオンにします。 |
このパネルでは、データソースクラス名または接続プールクラス名、あるいはその両方をJDBC 2.0ドライバに対して指定できます。
次の表を使用してパネルを完了します(少なくとも1つのフィールドに対して値を入力する必要があります)。
フィールド |
指定する内容 |
---|---|
XADataSourceクラス名 |
XADataSourceクラスの完全修飾名を指定します。 |
ConnectionPoolDataSourceクラス名 |
ConnectionPoolDataSourceクラスの完全修飾名を指定します。 |
ConnectionPoolDataSourceクラス名とXADataSourceクラス名の両方を指定した場合、1つだけが使用されます。使用されるクラス名は、パネルで指定した設定プロパティ全体によって異なります(データソース設定プロパティの指定を参照)。設定プロパティは、その後、データソースクラスのインスタンスに適用されます。
接続プールを追加すると、アプリケーションサーバでは、指定したユーザ名のデータベースへの接続を作成し、指定した接続の最小数をあらかじめ割り当てます。
接続プールの追加は、コマンドラインから、またはAddCP SilverCmdを使用してバッチファイルから実行できます。
コネクタ接続プールを作成する場合、最初にサーバでRARを展開して、有効にしておく必要があります。RARの展開の詳細については、『機能ガイド』の「J2EEアーカイブ展開」を参照してください。
この節では、SMCのコネクタ接続プールの追加ウィザードを使用して接続プールを追加する方法について説明します。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
[コネクタ]を選択して、[追加]をクリックします。ターゲットデータベースへの接続にサーバで使用するプールの名前およびユーザ名とパスワードの組み合わせを指定するように指示されます。
フィールド |
指定する内容 |
---|---|
プロパティ名 |
ManagedConnectionFactoryプロパティの名前 |
プロパティの値 |
ManagedConnectionFactoryプロパティの値 |
行われること 接続プールを追加すると、アプリケーションサーバでは、指定したユーザ名のEISへの接続を作成し、指定した接続の最小数をあらかじめ割り当てます。
接続プールを追加しても、サーバを再起動する必要はありません。サーバの再起動が必要となるのは、接続プールを削除して、同じ名前の(同じタイプの)プールを追加した場合です。元の接続プール(削除されたもの)が実行中のアプリケーションによって使用されていた場合、アクティブなコンポーネント(プール内のEJBオブジェクトなど)の1つによってjava.sql.DataSourceオブジェクトへの参照がキャッシュされている可能性があります。この参照では、無効な接続プールを参照していることがあります。サーバを再起動すると、キャッシュされた参照はクリアされます。
コマンドラインからの接続プールの追加 接続プールの追加は、コマンドラインから、またはAddCP SilverCmdを使用してバッチファイルから実行できます。
データベースまたはEISとアプリケーションサーバの間の接続を維持する必要がない場合は、接続プールをサーバから削除できます。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
コマンドラインからの接続プールの削除 サーバからのデータベースの削除は、コマンドラインから、またはRemoveCP SilverCmdを使用してバッチファイルから実行できます。
接続プールのプロパティのサブセットを編集したり、プールをシャットダウンしたり、プールを再起動したりできます。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
接続プールの編集ウィザードが表示されます。タイプに応じて、接続プールの異なるプロパティを変更できます。 JDBC接続プールのパネルの詳細についてはパネルの参照、コネクタ接続プールのパネルの詳細についてはコネクタ接続プールの追加を参照してください。
接続プールは、シャットダウンすると、サービスクライアント接続要求に対して使用できなくなります。
接続プールは、基盤となるデータベースやEISを一時的にオフラインにする場合にシャットダウンすることが推奨されます。これは、シャットダウンすることによって、プールではユーザ接続要求が処理されないように保証できるためです。
接続プールをシャットダウンすると、すべてのデータベース接続が閉じられ、接続に関連付けられているリソースもすべて解放されます。接続プールを再び使用できるようにするには、[再起動](次の説明を参照)を使用します。サーバを再起動しても、シャットダウンした接続プールは再起動されません。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
無効な接続プールの認識 プール名が太字で表示されている場合、そのプールは無効です。サーバの初期化時に接続プールを起動できなかった場合、このプールは無効になることがあります。このような状況は、データベースがダウンしている場合や、何らかのネットワーク問題が発生して接続を作成できなかった場合に見られる可能性があります。無効なプールを削除するには、次の接続プールの削除を参照してください。
SMCの[シャットダウン]ボタンを使用して停止された接続プールは、再起動することができます。
プールは、シャットダウンされる前にそのプールによって使用されていた設定プロパティ(最小/最大接続数やタイムアウトなど)を使用して再起動されます。
SMCの左側のペインでサーバを選択します。サーバが一覧表示されていない場合は、SMCに追加します(アプリケーションサーバのリモート管理を参照)。
この節では、接続プールの作成と管理に関連するその他の考慮事項について説明します。この節には次のトピックが含まれています。
アプリケーションサーバでは、アプリケーションコンポーネントで使用される接続を、コンポーネントのタイプ(ステートフルまたはステートレス)によって異なる方法で確保します。
「ステートレス」コンポーネントに対しては、サーブレットやステートレスセッションBeanの場合と同様に、メソッド呼び出しの後で接続がアプリケーションサーバによって確保されます。
「ステートフル」コンポーネントに対しては、ステートフルセッションBeanの場合と同様に、クライアントでBeanがアクティブに使用されている限り、接続はアプリケーションサーバによって確保されません。
ステートレスコンポーネントによって開かれる接続がアプリケーションサーバで確保される方法は、httpd.propsファイルでhttp-server.com.sssw.srv.invctx.releaseResプロパティを使用することによって設定できます。このプロパティには、次の値があります。
トランザクション処理を実行するアプリケーションやコンポーネントでは特に、JTA/XAサポートを提供しているJDBCドライバおよびリソースアダプタを使用する必要があります。
JTA/XAプロトコルをサポートしないJDBCドライバや、ローカルトランザクションのみをサポートするコネクタリソースアダプタに対して接続プールを作成する場合、アプリケーションサーバでは、これらのプールによって作成された接続を有効にしてグローバルトランザクションに登録します(ただし、トランザクションに登録できる接続は1つだけです)。デフォルトでは、トランザクションの範囲内で取得された接続の共有がアプリケーションサーバによって試行されます(展開記述子によって指定されていない限り)。これは、次のことを意味しています。
コンポーネントが共有されていない複数の接続をプールから取得しようとすると、プールマネージャによって、2回目の接続要求が行われたときに例外がスローされます。
異なるセキュリティ資格情報(ユーザ名やパスワードなど)を使用して、同じトランザクション内の1つまたは複数のコンポーネントがプールから2つの接続を取得しようとすると、接続プールによって、2回目の要求が行われたときに例外がスローされます。
これらのタイプの接続を使用して実行された作業は、復元できません。
JDBCベースおよびコネクタベースの接続プールは、デフォルトにより、グローバルトランザクションに接続を登録するように設定されます。次のようなトランザクションの場合は、グローバルトランザクションに接続が登録されないように接続プールを作成できます。
J2EEアプリケーションまたはスタンドアロンのコンポーネントで、このような方法で設定された接続プールが使用されないようにしてください。 アプリケーションまたはコンポーネントのトランザクションセマンティックが違反されます。
可能な場合は、「コンテナ」管理のサインオンを使用してください。「コンポーネント」管理のサインオンを使用するアプリケーションは、移植性と効率性に欠けます。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...