openSUSE Leap 16

PostgreSQL 17 : バックアップ/リストア2025/11/25

 

PostgreSQL のデータベースを バックアップ/リストア する際は付属のツールで実行可能です。

[1] データベースのバックアップです。
# [--format=*] で指定可能な形式
#     p = plain (SQL)
#     c = custom (圧縮形式)
#     t = tar
#     d = directory

# [cent] ユーザーが自身が所有する [testdb] データベースをバックアップ
suse@www:~>
pg_dump -U suse --format=t -d testdb > pg_testdb.tar

suse@www:~>
total 8
-rw-r--r--. 1 suse suse 6656 Nov 25 09:06 pg_testdb.tar


# 管理ユーザー [postgres] で全データベースをバックアップ

postgres@www:~>
mkdir ~/backups

postgres@www:~>
pg_dumpall -f ~/backups/pg_DB_all.sql

postgres@www:~>
ll ~/backups

total 8
-rw-r--r--. 1 postgres postgres 4106 Nov 25 09:07 pg_DB_all.sql
[2] バックアップファイルからのデータベースのリストアです。
# [cent] ユーザーがバックアップファイルから [testdb] データベースをリストア

suse@www:~>
pg_restore -U suse -d testdb pg_testdb.tar

# 管理ユーザー [postgres] でバックアップファイルから全データベースをリストア
# バックアップファイルが SQL 形式の場合は [psql] で実行する

postgres@www:~>
psql -f ~/backups/pg_DB_all.sql

関連コンテンツ