実際に試した環境
・ Ubuntu 20.04 ・ PostgreSQL 12
バックアップする。
# pg_dumpall -U postgres -f /mnt/backup/test.sql
「Peer authentication failed for user “postgres”」が発生する場合、下記ファイルを編集してpeer認証を無効(サービス再起動が必要)にする。
#local all postgres peer local all postgres md5
もしcronなどで利用するためにパスワード認証をスキップしたい場合は、実行ユーザー(ここではroot)のホームディレクトリに下記を作成する。
*:*:*:postgres:ぱすわーど
バックアップからリストアする。
# su postgres $ psql -f /mnt/backup/test.sql
補足
圧縮しながらバックアップする。
# pg_dumpall -U postgres | gzip -c /mnt/backup/test.sql.gz
パスワードをつける場合はzipを使用するぐらいしか思いつかない。
# cd /mnt/backup/ # pg_dumpall -U postgres -f test.sql # zip --encrypt --password ぱすわーど test.sql.zip test.sql