Wildfly 14设置PostgreSQL数据源-严重:数据库“ my_user”不存在

时间:2018-10-31 12:42:56

标签: postgresql wildfly

我有一个名为my_db的PostgreSQL数据库。我可以通过psql和HeidiSQL连接到该数据库。

我正在运行Wildfly 14服务器,并已将PostgreSQL JDBC驱动程序作为部署添加(我可以在“配置”>“数据源和驱动程序”>“ JDBC驱动程序”下面看到该驱动程序)。

我正在尝试为我的应用程序创建数据源,但是它无法正常工作。

Name: MyDS
JNDI Name: java:/MyDS
Connection URL: jdbc:postgresql://localhost:5432/my_db
Username: my_user
Password: my_password

但是当我测试连接时,我得到了错误:

FATAL: database "my_user" does not exist

它能够验证用户角色my_user,但是由于某种原因,它试图连接到数据库my_user而不是my_db

我在做什么错?我需要它来连接到数据库my_db

2 个答案:

答案 0 :(得分:3)

我不明白为什么它忽略了连接URL中的my_db部分,直到我意识到它可能忽略了整个URL。快速搜索发现以下问题:

WildFly Postgres DataSource remote connection-url ignored

我的数据源类已设置为org.postgresql.ds.PGSimpleDataSource,删除它使其可以工作。

问题是,在Wildfly中,它没有提供在创建数据源向导期间设置数据源类的选项(即,配置>数据源和驱动程序> DAtasource>添加),因此我不得不使用向导创建无效的数据源,并然后对其进行修改以删除数据源类org.postgresql.ds.PGSimpleDataSource

答案 1 :(得分:1)

在WildFly管理控制台中,将属性(“连接属性”字段)添加到数据源:

url ⇒ jdbc:postgresql://localhost:5432/<database>

“连接URL”字段不适用于连接。看起来像:

enter image description here