0
0

More than 3 years have passed since last update.

PostgreSQL12.5でDB2台の非同期レプリケーションの設定

Posted at

◆概要

PostgreSQL12.5でDB2台の非同期レプリケーションの設定をする

前提

2台のサーバにインストール済み。
 マスタ:192.168.11.110
 スタンバイ:192.168.11.111

1.マスター側ホストの設定

postgresql.confの設定

vi /var/lib/pgsql/data /postgresql.conf

59行目:コメント解除して変更
listen_addresses = '*'

193行目:コメント解除 レプリケーションを有効にする
wal_level = replica

198行目:コメント解除 スタンバイサーバーの同期レベルを設定
synchronous_commit = on

286行目:コメント解除 レプリケーションリクエストを受ける接続最大値
max_wal_senders = 10

288行目:コメント解除して変更 アーカイブログのファイルセグメント数の最小値
wal_keep_segments = 10

300行目:コメント解除して変更 同期サーバを指定なし(全て受付)にする。
synchronous_standby_names = '*'

pg_hba.conf設定

 最終行にレプリケーション用サーバの許可を指定する
vi /var/lib/pgsql/data /pg_hba.conf

最終行:既存設定はコメント化して追記 (接続許可の設定) スタンバイサーバのIPとユーザを記載する

# host replication [レプリケーションユーザー] [接続許可IP] [認証方式]
#host    replication     all             127.0.0.1/32            ident
#host    replication     all             ::1/128                 ident
host    replication     rep_user        192.168.11.111/32        md5

レプリケーション用ユーザ作成。

 スタンバイサーバからログインするユーザ
 レプリケーション権限とログイン権限を付与する

su – postgres
psql
CREATE ROLE rep_user replication LOGIN;
\q
exit

DB再起動

systemctl restart postgresql.service

起動しない場合は、設定ファイルを再確認すること

2.スレーブ側ホストの設定

 ・サービス停止
systemctl stop postgresql.service

 ・既存データを削除。–rf ディレクトリを対象、メッセージ非表示
rm -rf /var/lib/pgsql/data

・マスタからバックアップ取得。実行するユーザに注意
su - postgres
pg_basebackup -R -h 192.168.11.110 -U rep_user -D /var/lib/pgsql/data -P

・スレーブ用ファイルを配置 これが無いとマスタで起動する
touch /var/lib/pgsql/data/standby.signal

・postgresql.confの設定

vi /var/lib/pgsql/data/postgresql.conf
# 59行目:コメント解除して変更 接続できるアドレス
listen_addresses = '*'
#310行目 スタンバイサーバがプライマリサーバに接続するための接続文字列を指定
primary_conninfo = 'host=192.168.11.110 port=5432 user=rep_user application_name=node01'
# 315行目:コメント解除 ホットスタンバイを有効にする
hot_standby = on
#ホットスタンバイのフィードバックを有効にする。なくてもよさそう
hot_standby_feedback = on

再起動する
systemctl start postgresql-12.service

マスタ側でデータ投入して反映確認する

以上

★更新履歴
221/4/14 新規作成

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0