Я должен обновить с PostgreSQL 9.2 до 9.6. Ниже приведены проблемы, с которыми я сталкиваюсь:
Поскольку у нас есть настройка потоковой репликации, а PostgreSQL не поддерживает обновление до более низкой версии в режиме потоковой репликации, когда я обновляю master, мне приходится перестраивать ведомые устройства, и это занимает 3 часа. У меня нет этого свободного времени. В любой момент времени нам нужен один раб и один мастер. Есть ли другой способ выполнить обновление без необходимости перестраивать ведомые устройства, используя потоковую репликацию?
Для построения логической репликации мы думали об использовании slony, но у slony есть некоторые ограничения в том, что он не реплицируется автоматически:
- Изменения в больших объектах (BLOBS)
- Изменения, сделанные командами DDL
- Изменения в пользователях и ролях
... и наше приложение имеет непрерывные команды создания. Поэтому мы не можем использовать слони.
Пожалуйста, предложите что-нибудь, чтобы избежать перестройки подчиненного устройства и выполнить обновление с минимальным временем простоя и одним ведущим и одним подчиненным.