我有一个名为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
。
答案 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)