5
Goを使用してHerokuのPostgresに接続しようとしています。すべてがローカルで正常に動作しています。HerokuのGo + Postgresで接続が拒否されました
私がHerokuで受けているエラーはdial tcp 127.0.0.1:5432: connection refused
です。
herokuのコマンドラインでpsqlを使用してデータベースに接続できることを確認し、データベースのURL設定が正しいことを確認しました。コードは十分にクリアなので、低レベルの問題があるのだろうかと思います。
import (
"database/sql"
"github.com/coopernurse/gorp"
_ "github.com/lib/pq"
"os"
)
func openDb() *sql.DB {
connection := os.Getenv("DATABASE_URL")
db, err := sql.Open("postgres", connection)
if err != nil {
log.Println(err)
}
return db
}
...とgithub.com/lib/pqをインポートしています:
コードは十分に簡単です。 Goバージョンは1.1.2です。
...私は 'SSLMODE = require'を台無しに持っていたことがありませんし、私は非常に似たようなことをやっています( 'lib/pq'も使っています)。また、コードにDB接続の詳細を含めることは悪い習慣です。 Herokuでは環境変数を設定できます。環境変数は 'os.Getenv()'を使ってコードにアクセスできます。がんばろう! :) – weberc2