何か壊滅的な事態が起こる前に毎晩データベースをバックアップする cronjob を作成しようとしています。次のコマンドが私のニーズを満たすようです:
0 3 * * * pg_dump dbname | gzip > ~/backup/db/$(date +%Y-%m-%d).psql.gz
ただし、これを実行した後は、パスワードを入力する必要があります。cron から実行した場合は、パスワードを入力することができません。自動的にパスワードを渡すにはどうすればよいですか?
ベストアンサー1
実行する.pgpass
アカウントのホーム ディレクトリにファイルを作成します。pg_dump
形式は次のとおりです。
hostname:port:database:username:password
次に、ファイルのモードを に設定します0600
。そうでない場合は無視されます。
chmod 600 ~/.pgpass
PostgreSQLのドキュメントを参照libpq-pgpass詳細については。