ステップバイステップ ガイド:CentOS 8 での PostgreSQL 12 ストリーミング レプリケーションのセットアップ
PostgreSQL ストリーミング レプリケーションは、先行書き込みログ (WAL) データをプライマリ (マスター) ノードからスタンバイ (スレーブ) ノードに継続的にストリーミングし、高可用性とフォールト トレランスを実現するほぼリアルタイムのデータベース コピーを作成します。
マスター 読み取り/書き込み WAL スレーブ 1 スレーブ 2 読み取り専用 読み取り専用マスター ノードの構成
1. WAL アーカイブを有効にする
postgresql.conf を編集します ?
archive_mode = on archive_command = 'cp %p /var/lib/pgsql/12/archive/%f' wal_level = replica max_wal_senders = 3
2.レプリケーション接続を許可する
pg_hba.conf を編集します ?
# TYPE DATABASE USER ADDRESS METHOD host replication repluser 192.168.1.20/32 md5
3.レプリケーション ユーザーの作成
CREATE ROLE repluser WITH REPLICATION LOGIN PASSWORD 'securepass';
これらの変更後、マスター上で PostgreSQL を再起動します。
スレーブ ノードの構成
1.マスターからのベースバックアップ
sudo -u postgres pg_basebackup -h master_ip -D /var/lib/pgsql/12/data -U repluser -P -R
2. Recovery.conf を構成する
/var/lib/pgsql/12/data/recovery.conf を作成します ?
standby_mode = 'on' primary_conninfo = 'host=master_ip port=5432 user=repluser password=securepass' restore_command = 'cp /var/lib/pgsql/12/archive/%f "%p"'
3.スレーブを開始
sudo systemctl start postgresql-12 sudo systemctl enable postgresql-12
レプリケーションの検証
マスター上で実行して、接続されているレプリカを確認しますか?
SELECT client_addr, state, sync_state FROM pg_stat_replication;
client_addr | state | sync_state ----------------+-----------+------------ 192.168.1.20 | streaming | async
手動フェイルオーバー
マスターに障害が発生した場合
- 障害が発生したマスターからレプリケーションを切断する
- スレーブでは、
recovery_target_timeline = 'latest'を設定します。recovery.confで - 昇格したスレーブで PostgreSQL を再起動します
pg_stat_replicationを使用して他のスレーブが新しいマスターに接続していることを確認します。
結論
CentOS 8 上の PostgreSQL 12 ストリーミング レプリケーションには、マスター上で WAL アーカイブとレプリケーション アクセスを構成し、スレーブ上でベース バックアップと Recovery.conf を作成し、pg_stat_replication で検証することが含まれます。 。手動フェイルオーバーは、必要に応じてスレーブをマスターに昇格させます。
-
初期のデータベースモデル
データベースモデルは、データベースの論理構造を決定し、基本的にデータを保存、整理、および操作する方法を決定します。データベースが設計される前は、データを保存する唯一の方法はファイルストレージでした。これにより、プログラマーはデータを抽出するために非常に長い時間を費やす必要があり、プログラムは複雑な解析と関連付けを実行する必要があったため、複雑さが増しました。 Perlのようなさまざまな言語は、その強力な正規表現により、より簡単な方法でテキストを処理します。ただし、ファイルからデータにアクセスすることは依然として複雑な作業です。システムがエラーを起こしやすく、開発が遅く、保守が難しいため、デー
-
マスター SQL Server:包括的なコース、リソース、エキスパート チュートリアル
グリーンフィールド プロジェクトに取り組むということは、ゼロから始めることを意味します。使用するデータベースの種類を選択しなければならないチームの一員となるのは一般的です。 トランザクションの完了時に利用可能なデータにアクセスできることが重要な場合は、構造化照会言語 (SQL) データベースを使用している可能性があります。 SQL Server は、リレーショナル データの保存に使用できる最も一般的な SQL データベースの 1 つです。この記事では、SQL Server とは何か、SQL Server の用途、SQL Server の使い方を学ぶ方法について説明します。さらに、S