Configurazione Standby DB Postgres 9.6
Da wiki.gienne.cloud.
Doc: https://en.wikibooks.org/wiki/PostgreSQL/Replication
Install CentOS consigliata 7.x
Disable SeLinux
disable firewalld
Reboot
echo "pathmunge /usr/pgsql-9.6/bin" > /etc/profile.d/postgres.sh
Su Master:
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-redhat96-9.6-3.noarch.rpm -y yum install yum install postgresql96-server postgresql96-contrib -y service postgresql-9.6 initdb chkconfig postgresql-9.6 service postgresql-9.6 start
Su Slave:
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-6-x86_64/pgdg-redhat96-9.6-3.noarch.rpm -y yum install yum install postgresql96-server postgresql96-contrib -y Macchina Master 10.240.1.114 (esempio) Macchina Slave 10.240.1.115 (esempio)
Sul Master:
Configurazione HBA for User Sync
pg_hba.conf nella Home data del contenitore di Postgres:
host replication replicator 10.240.1.115/32 md5
Add to Postgres.conf
listen_addresses = '*'
wal_level = hot_standby
max_wal_senders = 3
wal_keep_segments = 8
- In releases prior to 9.6, this parameter also allowed the values archive and hot_standby. These are still accepted but mapped to replica.
Create USER:
psql -c "CREATE USER replicator REPLICATION LOGIN ENCRYPTED PASSWORD 'orione';"
Slave da utente Postgres Duplicate:
pg_basebackup -h 10.240.1.114 -D /var/lib/pgsql/9.6/data -U replicator -P -v -x
Create recovery.conf:
primary_conninfo = 'host=10.240.1.114 port=5432 user=replicator password=orione'
trigger_file = '/tmp/stica2.txt'
standby_mode = 'on'
rm backup_label o altre file che sono i semafori.
service postgresql-9.6 start su Slave
Esempio di insert massimo per test (fonte: Edoardo Moriani)
CREATE TABLE t_test10 (id serial, name text);
INSERT INTO t_test10 (name) SELECT 'paul' FROM generate_series(1, 4000000);