Nelze to provozovat v rezimu mixed-version? Tj. mit v clusteru ruzne verze a postupne je upgradovat? (neco na zpusob LTO pasek, kde je prekryv podpory 1 generace na zapis a dvou na cteni - nebo tak nejak).
A podle popisu jak ctu - tak postacilo opravdu provest spravnou instrumentaci (dle sluzeb co pouzivaji db) - a upgrade samotne databaze byl bez problemu?
Fyzická streaming replikace umí jenom stejnou verzi, protože formát WALu se mezi verzemi mění a replikace fakticky provádí recovery (tj. aplikuje WAL). Čili cílový stroj by dostával formát 9.6, ale binárky by měl 13 a to bohužel nejde dohromady :-(
Existuje i tzv. logická replikace, kdy se WAL dekóduje na logické operace, a to samozřejmě mezi verzemi funguje. Ale jsou tam různá omezení (zejména ve starších verzích jako 9.6) a je to složitější na nasazení - u systémů kde je kritické naprosto minimalizovat výpadek / maximalizovat uptime se to používá, ale pokud je akceptovatelná krátká outage pro dump/restore neb pg_upgrade tak je to asi zbytečná práce.
@upgrade
Mozem potvrdit, ten upgrade je malokedy problematicky (zvedsa ak nie su naistalovane potrebne extensions).
@replikacia
Pre Write-Ahead Log Shipping je nutne aby major vezie boli rovnake. Je to tym ze WAL je primarne pouzity pre iny ucel.
Pre logicku replikaciu je vraj mozne aby master a slave boli v roznych verziach, ale odskusane to nemam. Je samozrejme nutne aby neboli pouzite veci ktore ta nizsia verzia nepozna.
Dobrý den,
pokud se nepletu, pak logická replikace je dostupná až od PostgreSQL verze 10. Každopádně na logickou replikaci plánujeme přejít, už teď nás ta streaming replikace v některých případech omezuje.
>> “A podle popisu jak ctu - tak postacilo opravdu provest spravnou instrumentaci (dle sluzeb co pouzivaji db) - a upgrade samotne databaze byl bez problemu?”
Ano, přesně tak.
VS
S logickou replikací je to trochu složitější - máte pravdu že "zabudovaná" logická replikace je až v PostgreSQL 10, tj. od té verze jde udělat CREATE PUBLICATION / SUBSCRIPTION atd.
Ale už od verze 9.4 je tam potřebná infrastruktura na dekódování WALu pomocí pluginů, a existují externí projekty které právě umí logickou replikaci už před 10 - pglogical, debezium, wal2json. Není to tak samozřejmě tak pohodlné jako ta zabudovaná replikace, ale zase to může dělat i věci které ta zabudovaná neumí.