Edited at

Heroku PostgresにIntelliJ系のエディタから接続する

More than 3 years have passed since last update.


背景

Heroku PostgresにGUIで接続したいじゃん!



phpStormでDatabaseってやつあったしやれるっしょ



めっちゃエラー出る…

phpStormで地味に面倒だったのでメモ。IntelliJ系とか書いてるけど他のエディタは持っていませんのでご了承ください。私の環境はphpStorm10です。

Posticoを使わずに頑張ってみましたがPosticoいいですよ。


1. 接続情報を取得

Heroku Postgresql - External Connections を参考に、$ heroku pg:credentials DATABASE --app APPNAME を叩く。

もしくはheroku dashboardからapp → plugin → postgresqlでいけるのでは


2. エディタから設定

Preference → Plugins → Database Tools and SQLが有効化されているか確認しておいてください。

多分デフォでは右上にあるDatabaseのTool Windowを開きます。

スクリーンショット 2015-12-07 18.43.26.png

Data Source → PostgreSQLを選択。

最初はDriverが足りなかったので追加でインストールしました。

スクリーンショット 2015-12-07 18.49.28.png

1.で取得した接続情報を入力します。

この StackOverflow を参考にURL Onlyで入力したような覚えがあります。

ここで最後についているSSL関係の部分を追記することを忘れないで下さい。

大カッコの中身は自分の接続情報に置き換えてください。

jdbc:postgresql://[host]:[port]/[database]?user=[username]&password=[secret]&ssl=true&sslfactory=org.postgresql.ssl.NonValidatingFactory&sslmode=require

これでTest Connectionを叩けばいける気がします。

以上。Herokuでやっていく。


12/8追記

@mikakane さんからSlackで


GUIでpostgress ssl通信つなぐときは

Advancedのタブを開いて、

ssl をtrueに

sslfactory を org.postgresql.ssl.NonValidatingFactory に設定すると

普通のHost IDで行けるっぽいです。


と教えてもらいました。

スクリーンショット 2015-12-08 10.37.14.png

SSH/SSLタブを見ていたのですがAdvancedタブでできるのですね…。

ssl, sslfactoryはデフォで存在していたようですが、sslmodeは一番下から追加しないといけないかもしれません。

@mikakane さんの Heroku Advent Calendar 4日目 ぜひご覧ください(宣伝です)