Для настройки стриминг-репликации PostgreSQL между серверами необходимо выполнить следующие шаги на основном (главном) сервере: scalegrid.io
- Инициализировать базу данных с помощью утилиты initdb. scalegrid.io
- Создать пользователя или роль с привилегиями репликации с помощью команды:
CREATE USER <user_name> REPLICATION LOGIN ENCRYPTED PASSWORD ’<password>’
. scalegrid.io - Настроить свойства, связанные со стриминг-репликацией, в конфигурационном файле PostgreSQL (postgresql.conf): scalegrid.io
- Перезапустить службу PostgreSQL на главном сервере, чтобы изменения вступили в силу. scalegrid.io
На сервере-реплике нужно выполнить следующие шаги: scalegrid.io
- Создать базовое резервное копирование основного сервера с помощью утилиты pg_basebackup и использовать его в качестве отправной точки для реплики. scalegrid.io
- Создать файл конфигурации репликации, если он ещё не создан (он создаётся автоматически, если при использовании pg_basebackup предоставить опцию -R): scalegrid.io
- standby_mode = ‘on’; scalegrid.io
- primaryconninfo = ‘host=<masterhost> port=<postgresport> user=<replicationuser> password=<password> applicationname=”hostname”’; scalegrid.io
- recoverytargettimeline = ‘latest’. scalegrid.io
- Запустить репликацию. scalegrid.io После настройки и запуска реплика подключится к основному серверу и начнёт передавать логи. scalegrid.io
Для настройки стриминг-репликации все серверы должны быть одной версии, работать на одной ОС и архитектуре. selectel.ru
Если не удаётся самостоятельно настроить репликацию, рекомендуется обратиться к специалисту.