Postgresql主從容災

2021-10-06 15:00:19 字數 3490 閱讀 2750

一、環境

作業系統:centos 7

資料庫版本:postgresql 11

-主庫ip:192.168.114.135

-從庫ip:192.168.114.134

二、資料庫部署

進入該官網**選擇對應版本的映象

yum install -y

yum install postgresql11 -y

yum install postgresql11-server -y

附帶安裝

yum install postgresql11-libs -y

yum install postgresql11-contrib -y

yum install postgresql11-devel -y

三、主從配置

主庫1.初始化

/usr/pgsql-11/bin/postgresql-11-setup initdb

systemctl enable postgresql-11

systemctl start postgresql-11

2.建立複製使用者,進行主從同步使用

su - postgres

create role repl login replication encrypted password 『123456』;

3.主庫上配置從庫採用repl賬號

4.建立目錄

mkdir /var/lib/pgsql/11/data/pg_archive/

chown -r postgres.postgres /var/lib/pgsql/11/data

5.重啟服務

systemctl restart postgresql-11

從庫1.把主節點所有的資料檔案都會拷貝過來

pg_basebackup -h 192.168.114.135 -u repl -d /var/lib/pgsql/11/data/ -x stream -p

2.修改配置

vim /var/lib/pgsql/11/data/postgresql.conf

listen_addresses = 『*』 # what ip address(es) to listen on;

port = 5432 # (change requires restart)

max_connections = 1000 # (change requires restart)

shared_buffers = 128mb # min 128kb

dynamic_shared_memory_type = posix # the default is the first option

wal_level = replica # minimal, replica, or logical

archive_mode = on # enables archiving; off, on, or always

archive_command = 『cp %p /var/lib/pgsql/12/data/pg_archive/%f』 # command to use to archive a logfile segment

wal_sender_timeout = 60s # in milliseconds; 0 disables

hot_standby = on # 「on」 allows queries during recovery

max_standby_streaming_delay = 30s # max delay before canceling queries

wal_receiver_status_interval = 10s # send replies at least this often

hot_standby_feedback = on # send info from standby to prevent

log_directory = 『log』 # directory where log files are written

3.建立恢復檔案recovery.conf

cp /usr/pgsql-11/share/recovery.conf.sample /var/lib/pgsql/11/data/recovery.conf

vim /var/lib/pgsql/11/data/recovery.conf

#調整引數

recovery_target_timeline = 『latest』 #同步到最新資料

standby_mode = on #指明從庫身份

trigger_file = 『failover.now』

primary_conninfo = 『host=192.168.114.135 port=5432 user=repl password=123456』 #連線到主庫資訊

systemctl start postgresql-11

四、驗證

主庫上select client_addr,sync_state from pg_stat_replication;

在主庫上建立更新資料驗證

PostgreSQL資料庫主從部署

1 作業系統 centos 7.3 2 postgresql 10.3 3 主節點 192.168.0.101 從節點 192.168.0.102 1 安裝postgresql 主節點與從節點均安裝postgresql,安裝方法參考部落格 centos系統下postgresql資料庫安裝配置 2 配...

Postgresql9 6主從複製

安裝完pg之後,下面可以進行pg基於流的主從複製 create user stream with replication login password stream 配置完成之後啟動主庫,在從庫執行 pg basebackup h 192.168.199.123 p 54321 u stream f...

Postgresql12主從配置及切換

一 主從安裝 1 依據 centos7安裝最新版postgresql 操作,注意個別細節選擇主從配置 2 注意 從伺服器只能查詢,不能寫入 3 主庫ip 103,備庫ip 104 二 主伺服器 1 新增pg用於同步的使用者名稱 su postgres psql 建立具有複製流操作的使用者 repli...