少しつまずいたことをメモ
mysqlだと~/.my.cnf
に接続情報書き込むだけで、オプションを省略してDBに入ることができる。
そのせいか、postgresqlも同じだと勘違いしていました。てっきり、~/.pgpass
に接続情報を書き込むだけでオプションを省略できるものだと思ってた。
何回も~/.pgpass
の中にhostname:port:database:username:password
の情報を書き込みchmod 600 ~/.pgpass
と権限を変えて、いざコマンド実行
#psql
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
何回も.pgpassの設定を変えても同じ結果。。。
何回もググってた結果「.pgpassはおそらくpasswordだけ省略してくれる」と予想。。。
#psql -h hoge.com -u user
で見事パスワードだけ省略して入れました。
結論としては、.pgpass
は使用せずにすべて環境変数に登録
常時環境変数が消えないため~/.bashrc
に登録
.bashrc
#postgresqlオプション省略
export PGHOST=hoge.com
export PGPORT=5432
export PGDATABASE=hoge
export PGUSER=user
export PGPASSWORD=password
これで、psql
だけでは入れるようになりました。