2017-01-06 11 views
0

私はpostgresqlのリスナーを実装しようとしています。データベース接続を取得すると、ローカルホストに接続していれば正常に動作しますが、ホストをリモートサーバに変更すると失敗します。PGDatasourceはリモートサーバに接続しません

@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を設定する方法はありません。

+0

リモートサーバーに接続しようとしたときに表示されるエラーを投稿してください? –

+0

com.impossibl.postgres.jdbc.PGSQLSimpleException:接続エラー:ホストの無いpg_hba.confのエントリ「」、ユーザー「」、データベース「」、SSLオフ - 私はDBAに話し、彼は私に言いました私はsslを有効にしなければなりませんでした。問題は** com.impossibl.postgres.jdbc.PGDataSource **には有効にするオプションがないようです。 – Marco

答えて

0

私はエラーを解決しなければなりません。私はちょうどプロパティの1つでSSLを有効にしなければならなかった。私はPGDataSourceのSSLのためのセッターを探していましたが、それを行う方法が見つからなかったので、私はそれをデータベース名で有効にしました。

私は次のようでした:

pg: 
connection: 
    host: remote-host 
    pwd: test 
    usr: test 
    dbs: test?ssl.mode=require 
    port: 5432 
関連する問題