legacy-knowledge-base
公開されました Sep. 10, 2025

Oracle Database上でJdbc_Pingを使用するとクラスタノードが接続されない

written-by

Justin Choi

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

この記事では、加入者がOracleデータベースを使用しており、クラスタ化された環境で発見プロトコルとしてJDBC_pingを使用している場合の解決策について説明します。 問題は、JGroupのデフォルトの initialize_sql 値がOracleと互換性がないことです。 その結果、 JGROUPSPING テーブルがデータベース に作成されず、ノード同士が接続されない

決議

解決方法は、 のjdbc_ping_config.xml を以下のように修正します。

initialize_sql="CREATE TABLE JGROUPSPING (own_addr varchar(200) NOT NULL, cluster_name varchar(200) NOT NULL, ping_data raw(2000) DEFAULT NULL, PRIMARY KEY (own_addr, cluster_name))"

ここにサンプルがあります。

<jdbc_ping connection_driver="oracle.jdbc.OracleDriver" connection_password="userpassword" connection_url="jdbc:oracle:thin:@172.16.xx.xxx:1521:orcl" connection_username="username" initialize_sql="CREATE TABLE JGROUPSPING (own_addr varchar(200) NOT NULL, cluster_name varchar(200) NOT NULL, ping_data raw(2000) DEFAULT NULL, PRIMARY KEY (own_addr, cluster_name))">
</jdbc_ping>

jdbc_ping_config.xml を修正したら、アプリケーションサーバを起動します。 キーワードを探します。 Accepted view; これはノードが接続されていることを示します。

did-this-article-resolve-your-issue

legacy-knowledge-base