我刚将我的数据用于heroku应用程序移动到更大版本的更大数据库。重新启动应用程序时,我收到一个错误,在连接到heroku之外的数据库时已经广泛讨论过。
app[web.1]: Caused by: org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host "XX.XX.XX.XX", user "12345678901234", database "12345678901234", SSL off
heroku FAQ声明:
您正在尝试建立不使用SSL的数据库连接。 SSL 所有人的连接都是必需的 在-0和-2计划上的一些较新数据库上的连接。请看看 有关如何建立加密的postgres驱动程序的文档 连接。
我无法访问myoku实例的postgres选项,是吗? 我错过了任何简单的信息吗?
其他信息:我正在使用Java的Play Framework 2.3.7。连接由Heroku处理,在环境变量中具有不可变的值。使用Heroku Toolbelt管理基础架构。
答案 0 :(得分:1)
您可能在build.sbt
:
"postgresql" % "postgresql" % "9.1-901-1.jdbc4"
将其更改为:
"org.postgresql" % "postgresql" % "9.4.1208"
默认情况下,这将使用SSL,如Heroku Postgresql documentation。
中所述如果无法升级库,则必须手动将这些参数添加到DATABASE_URL
。
ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory