PostgreSQLのバックアップとリストア~pg_basebackupを駆使して主系副系復帰を目指す~

中山テックです。

さて、PostgreSQLのバックアップ・リストアについてのお話。
作業中に誤って削除してしまった、バグでデータがグチャグチャになった等復旧が必要な時に便利です。

PostgreSQL × pgpoolの組み合わせでを前提とします


他の構築リンク


当記事以外の構築作業は下記のリンクからご覧ください。
※中山テックのサイトへ飛びますが、少しずつnoteへ移行していく予定です

VMWare Workstation Player×CentOSで自PCに仮想環境を構築する VMWare × CentOSの環境にSSH通信する CentOSにPostgreSQL(15)をインストールする pgpoolでPostgreSQLをレプリケーション&フェイルオーバー VMWareを立ち上げたら別のプロセス使用中エラーが出た NginxにDigest認証を組み込む方法 NginxをKeepAliveで冗長化&Tomcatへロードバランス 構築後、主系をダウンさせての動作確認 PostgreSQLバックアップ&リストア(当記事) 時間が来たら実行する「cron」の使い方を解説 PostgreSQL同士でレプリケーションセット ZABBIX構築してローカルからリモートアクセス

バックアップ前の準備

退避用ディレクトリ(フォルダ)をmkdirで作ります。
正直どこでも良いのですが、postgresユーザが実施するのでホームディレクトリに用意しました。

/home/postgres/bkup
/home/postgres/bkup_tmp

2つ用意しました。
1.「bkup」は指定日付分のバックアップを格納する場所
2.「bkup_tmp」は「pg_basebackup」で取得したバックアップデータの一時保管場所

何故こんな回りくどいことをするのか?と思うかもしれませんが、pg_basebackup実行後保存ディレクトリに1つでもファイルがあるとエラーが発生するためです。

作成したらpostgresユーザでログインします。

バックアップを実行しよう

pg_basebackup

ここから先は

20,705字

¥ 300

期間限定!PayPayで支払うと抽選でお得

この記事が気に入ったらチップで応援してみませんか?