Eu tenho que atualizar do PostgreSQL 9.2 para 9.6. A seguir estão os desafios que estou enfrentando:
Como temos a configuração de replicação de streaming, e o PostgreSQL não suporta atualização da versão inferior para a superior no modo de replicação de streaming, quando atualizo o master, preciso reconstruir os escravos e isso leva 3 horas. Eu não tenho esse tempo de sobra. A qualquer momento, precisamos de um escravo e um mestre disponíveis. Existe alguma outra maneira de atualizar sem precisar reconstruir os escravos, usando a replicação de streaming?
Para criar a replicação lógica, pensamos em usar slony, mas o slony tem algumas limitações, pois não é replicado automaticamente:
- Alterações em objetos grandes (BLOBS)
- Alterações feitas por comandos DDL
- Alterações nos usuários e funções
... e nosso aplicativo possui comandos de criação contínuos. Portanto, não podemos usar slony.
Por favor, sugira algo para evitar a reconstrução do escravo e fazer a atualização com tempo de inatividade mínimo e um mestre e um escravo prontos.