😃

psqlコマンドでパスワード入力を省略する方法

2022/12/31に公開

概要

パスワードファイルをあらかじめ作成して、psqlコマンドを実行するときにパスワード入力を省略する方法についてです。

方法

https://www.postgresql.jp/document/9.1/html/libpq-pgpass.html

上記のPostgreSQLの公式サイトを参考にしています。

パスワードファイルの作成

PostgreSQLのパスワードファイルをホームディレクトリに置きます。

~/.pgpass

また、このとき公式サイトによると

Unixシステムにおいて、.pgpassの権限はグループ、他者へのアクセスをすべて拒否しなければなりません。

と書かれているので、権限を変更する必要があります。

chmod 600 ~/.pgpass

パスワードファイルの書き方

パスワードファイルのフォーマットについては下記の通りです。

hostname:port:database:username:password

書き方の例

hostname: localhost
port    : 5432
database: localhostにある全てのDB
username: postgres
password: postgres

上記の設定をパスワードファイルに記述する場合は

localhost:5432:*:postgres:postgres

となります。

Discussion