Use barman
o recurso synchronous_standby_namespostgresql.conf
no arquivo do PostgreSQL
synchronous_standby_names = 'barman_receive_wal'
Não é possível fazer estas operações:
- criarusuário(suspenso)
- criadob(suspenso)
- não pode salvar dados no banco de dados primário se for usado
repmgr
para replicação
A configuração principal para eles é
max_wal_senders = 10
max_replication_slots = 10
shared_preload_libraries = 'repmgr'
wal_level = 'replica'
archive_mode = on
archive_command = 'rsync -a %p barman@backup_server:/var/lib/barman/mydb/incoming/%f'
synchronous_standby_names = 'barman_receive_wal'
Se remover synchronous_standby_names
desta configuração, funciona bem.