postgresql 流復制中指定同步的用戶
在創建postgresql流復制的過程中,可以指定用戶名。
主庫pg_hba.conf配置
vi $PGDATA/pg_hba.conf
host replication repl 192.168.56.12/32 md5
host all all 0.0.0.0/0 md5
主庫創建同步的用戶
# 主庫創建 replicator 流復制用戶用于后面創建同步備庫使用
CREATE USER repl REPLICATION ENCRYPTED PASSWORD 'repli';"
# 在備庫上使用 pg_basebackup 從主庫同步數據
pg_basebackup -D $PGDATA -Fp -Xs -v -P -h 192.168.56.11 -p 5432 -U repl# 12版本之后將參數都放到了postgresql.conf文件中并編輯 standby.signal 文件(12之前參數都配置在recovery.conf文件中)
vi postgresql.conf
primary_conninfo = 'application_name=pgdb host=192.168.56.11 port=5432 user=replicator password=replicator'
max_standby_streaming_delay = 30s
wal_receiver_status_interval = 10s# postgresl 9.4.1
$ cat recovery.conf
standby_mode = 'on'
primary_conninfo = 'user=postgres password=postgres host=192.168.56.11 port=5432 sslmode=disable sslcompression=1'#編輯 standby.signal 文件
vi standby.signal
standby_mode = on # async:表示備庫為異步同步方式。potential:表示備庫當前為異步同步方式,如果當前的同步備庫宕機后,異步備庫可升級成為同步備庫。sync:當前備庫為同步方式。quorum:表示備庫為quorum standbys的候選# 啟動備庫
pg_ctl start