У меня есть два узла Настройка PostgreSQL 11 HA следующим образом.
node1 - hamaster.myorg.net
node2 - haslave.myorg.net
recovery.conf
onузел2 выглядит следующим образом:
standby_mode = 'on'
primary_conninfo = 'host=hamaster.myorg.net port=5432 user=<user_here> password=<password_here> sslmode=require sslcompression=0'
trigger_file = '/tmp/MasterNow'
recovery_target_timeline = 'latest'
Я хочу обновить PostgreSQL до 12 в обеих системах. Я определил следующие шаги в точной последовательности:
- Остановите PostgreSQL на главном узле.
- Обновите RPM (я использую centos 7.8) до PostgreSQL 12 на главном узле и обновите PostgreSQLиспользуя
pg_upgrade
- Запустите PostgreSQL на главном узле.
- Остановите PostgreSQL на подчиненном узле.
- Обновите RPM (я использую centos 7.8) до PostgreSQL 12 наподчиненный узел и обновите PostgreSQL, используя
pg_upgrade
- На подчиненном узле скопируйте содержимое из
recovery.conf
в postgresql.conf
и удалите recovery.conf
. Также создайте файл standby.signal
в каталоге данных на подчиненном сервере. Переименуйте trigger_file
в promote_trigger_file
. Удалите строку standby_mode = 'on'
, поскольку это НЕ требуется PostgreSQL 12. - Запустите PostgreSQL на подчиненном узле.
Чего не хватает?