2016-04-29 10 views
0

私はherokuアプリケーションのデータを新しいバージョンのより大きなデータベースに移動しました。アプリケーションを再起動すると、私はエラーが発生しました。これはheroku以外のデータベースに接続するときに広く議論されています。Heroku Postgresデータベースプランの変更によりアプリケーションがクラッシュする

app[web.1]: Caused by: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "XX.XX.XX.XX", user "123456789", database "123456789", SSL off 

HerokuのFAQ状態:

あなたは、SSLなしでデータベース接続を確立しようとしています。 SSL は、すべての コネクションに対して、-0と-2のプランの一部の新しいデータベースで接続[...]するために必要です。暗号化された 接続の確立方法については、postgresドライバの のマニュアルを参照してください。

私はherokuインスタンスのpostgresオプションにアクセスできません。 簡単な情報が欠けていますか?

追加情報:私はPlay Framework 2.3.7 with Javaを使用しています。接続は、環境変数内の変更不可能な値でHerokuによって処理されます。インフラはHeroku Toolbeltを使用して管理されます。

+0

あなたのプラットフォーム/フレームワーク(Java Spring?Java Play?その他)と、2)接続の確立方法についてもう少し詳しくお話できますか? PostgreSQLサーバのオプションにアクセスできない間に、JDBCクライアントが使用するオプションを制御することができます。 (例えば、接続をインスタンス化するときに、値 "true"の "ssl"のプロパティを渡してください) – bimsapi

+0

@bimsapi質問をいただきありがとうございます。私はそれらにアクセスすることはありません。Herokuはすべてを管理しています。 – Steven

答えて

1

あなたはおそらくあなたのbuild.sbtにこのような何かを持っている。これに

"postgresql" % "postgresql" % "9.1-901-1.jdbc4" 

変更を:

"org.postgresql" % "postgresql" % "9.4.1208" 

Heroku Postgresql documentationで説明したようにこれは、デフォルトでSSLを使用します。

ライブラリをアップグレードできない場合は、これらのパラメータを手動でDATABASE_URLに追加する必要があります。

ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory 
関連する問題