无法使用Java连接到Azure上的Postgres数据库

时间:2020-09-22 19:11:42

标签: java postgresql azure hibernate ssl

我已按照https://docs.microsoft.com/en-us/azure/postgresql/connect-java中的说明在Azure上创建了一个Postgres数据库。现在,我可以通过本地PgAdmin连接到数据库,也可以使用psql从终端连接到数据库。但是,当我尝试在Java代码(java 8)中与Hibernate(版本5.4.21)连接时,总是得到以下错误,而没有任何解释。

org.postgresql.util.PSQLException: The connection attempt failed.
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:315)
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:51)
    at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:225)
    at org.postgresql.Driver.makeConnection(Driver.java:465)
    at org.postgresql.Driver.connect(Driver.java:264)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at test.ui.V9.main(V9.java:17)
Caused by: java.io.EOFException
    at org.postgresql.core.PGStream.receiveChar(PGStream.java:443)
    at org.postgresql.core.v3.ConnectionFactoryImpl.enableGSSEncrypted(ConnectionFactoryImpl.java:436)
    at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:144)
    at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:213)
    ... 7 more

我尝试了不同的SSL模式选项,但没有成功。我还从Azure方面禁用了SSL,但仍然没有成功。有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

COMMIT版本的驱动程序存在相同的问题。 尝试设置

42.2.15

了解更多:https://gitmemory.com/issue/pgjdbc/pgjdbc/1868/683710515