Keycloak群集中的JDBC_PING不会写入数据库

时间:2018-10-23 08:13:46

标签: jboss wildfly keycloak

我有两个完全相同配置运行的keycloak节点。我尝试使用JDBC_PING进行服务发现,但是节点未将任何内容写入数据库。 initialize_sql正在工作。如果该表不存在,但没有触发插入,则节点将创建该表。日志中也没有错误消息。

Keycloak版本:4.5.0.FINAL

我运行以下命令来启动节点:

bin/standalone.sh --server-config=standalone-ha.xml -b 0.0.0.0

<jdbc-protocol type="JDBC_PING" data-source="KeycloakDS">
    <property name="initialize_sql">
    CREATE TABLE IF NOT EXISTS JGROUPSPING (
            own_addr varchar(200) NOT NULL,
            cluster_name varchar(200) NOT NULL,
            ping_data BYTEA,
            constraint PK_JGROUPSPING PRIMARY KEY (own_addr, cluster_name)
            )
    </property>
    <property name="insert_single_sql">
    INSERT INTO JGROUPSPING (own_addr, cluster_name, ping_data) values (?, ?, ?)
    </property>
    <property name="delete_single_sql">
            DELETE FROM JGROUPSPING WHERE own_addr=? AND cluster_name=?
    </property>
    <property name="select_all_pingdata_sql">
            SELECT ping_data FROM JGROUPSPING WHERE cluster_name=?
    </property>
</jdbc-protocol>

我在tcp-stack内添加了此协议,并将tcp堆栈设置为默认值:

<channels default="ee">
    <channel name="ee" stack="tcp" cluster="ejb"/>
</channels>

有什么想法吗?

0 个答案:

没有答案