5.4. データベースの変更
JMS は、
jboss-as/server/$PROFILE/deploy/messaging/<DATABASE_TYPE>-persistence-service.xml
にて永続ストレージとして定義されたデータベースを利用します。デフォルトの永続ストレージタイプは hsqldb-persistence-service.xml
にて定義された Hypersonic (HSQLDB) です。この設定はクラスター環境向けに定義されています (<attribute name="Clustered">true</attribute>
)。
警告
Hypersonic 設定がデフォルトの永続設定として利用されていますが、Hypersonic は実稼動環境ではサポートされていません。以下の既知の問題が理由です。
- トランザクション分離がない
- スレッドおよびソケットリーク (
connection.close()
はリソースを整理しません) - 永続性の質 (通常ログはエラー後破損し、自動回復しません)
- データベースの破損
- 負荷時の安定性 (データベースのプロセスは、過度のデータを処理すると停止します)
- クラスター環境で実行不可能
Hypersonic データベースは、開発やテストを目的として設計されており、実稼動環境で利用するべきではありません。推奨データベースの詳細情報は、『スタートガイド』の『その他のデータベースの利用』を参照してください。
Persistence Manager、Post Office、JMS User Manager はすべて永続ストレージと通信します。Persistence Manager はメッセージ関連の永続化を処理します。Post Office はバインディング関連の永続化を処理します。JMS User Manager はユーザー関連の永続化を処理します。こうした管理 Bean のすべての設定は
<your database type>-persistence-service.xml
ファイルで処理されます。
MySQL、Oracle、PostgreSQL、Microsoft SQL Server、Sybase のデータベースのサンプル設定ファイルは、リリースバンドルの
jboss-as/docs/examples/jms
ディレクトリにあります。
これらデータベースのひとつにサポートを有効にするには、デフォルトの
jboss-as/server/$PROFILE/deploy/messaging/hsqldb-persistence-service.xml
設定ファイルをご使用のデータベースの種類向けの設定ファイルと置き換えてください。新規永続設定を適用するために、サーバーを再起動します。
重要
未対応の Hypersonic 設定以外に、提供のサンプル設定はデフォルトではクラスター化されていない環境向けに設定されています。お使いのデータベース設定向けにクラスター環境を有効にするには、
<your database type>-persistence-service.xml
の Clustered 属性をtrue
に設定します (デフォルト設定は<attribute name="Clustered">false</attribute>)。
デフォルトでは、データストアに依存するメッセージングサービスは、データソースに関して
java:/DefaultDS
を参照します。別の JNDI 名でデータソースをデプロイするためには、永続設定ファイルのすべての DataSource
属性を更新する必要があります。ディストリビューションにはデータソース設定のサンプルが含まれています。