我正在尝试为postgresql实现一个侦听器。当获得数据库连接时,如果我连接到本地主机,它将正常工作,但是一旦我将主机更改为远程服务器,它将失败。
@Bean
public DataSource datasource(){
PGDataSource pgDataSource = new PGDataSource();
pgDataSource.setHost( hostname );
pgDataSource.setDatabase( database );
pgDataSource.setPassword( password );
pgDataSource.setPort( Integer.parseInt(port) );
pgDataSource.setUser( user );
return pgDataSource;
}
application.yml
pg:
connection:
host: 127.0.0.1
pwd: test
usr: test
dbs: test
port: 5432
当我使用这些属性运行侦听器时,它可以正常工作,但是一旦更改主机,它就会失败。我认为可能是ssl,但是没有方法可以将ssl设置为true。
最佳答案
我必须解决错误。我只需要在其中一个属性中启用ssl。我在PGDataSource中寻找ssl的setter,但由于找不到任何方法,因此在数据库名称中启用了它。
我做了以下事情:
pg:
connection:
host: remote-host
pwd: test
usr: test
dbs: test?ssl.mode=require
port: 5432