PostgreSQL-Client v10 oder v11, mit v9-Server

PostgreSQL-Client v10 oder v11, mit v9-Server

Wir haben einen PostgreSQL-Server, den wir gerade von 9.3 auf 9.5 aktualisiert haben. Auf allen unseren Rechnern ist das 9.3-Client-Paket installiert, das daher pg_dumpnicht mehr funktioniert, da es nicht vorwärtskompatibel ist.

Wir müssen natürlich die Client-Software aktualisieren. Meine Frage ist, auf welche Version wir aktualisieren sollten. Ich dachte zunächst, wir sollten auf 9.6 wechseln, die neueste Version der 9.*-Reihe, damit wir dies in Zukunft nicht tun müssen, wenn wir den Server erneut aktualisieren. Aber wenn ja, warum dann nicht auf 10 oder 11? Gibt es irgendwelche Nachteile, wenn man Hauptversionen auf diese Weise mischt? Werden die Clients 10 und 11 als stabil angesehen?

Antwort1

Ich würde Ihnen raten, den Client zu aktualisieren, damit er mit der gleichen Version wie Ihr Server kompatibel bleibt (so wie pg_dump v9.5.x mit 9.5.x Postgres-Servern funktioniert). Sie könnten Version 10 verwenden, um pg_dump auf Version 9.5.x auszuführen, aber dann müssten Sie darauf vorbereitet sein, mit allen Fehlern umzugehen, die auftreten können, wenn Sie dies täglich tun müssen.

Obwohl es sich bei den Änderungen am Befehl pg_dump um neue Befehlsargumente handelt (siehe unten), bezweifle ich auf den ersten Blick, dass die Tests für die verschiedenen Permutationen von Backups mit Clients auf zukünftigen Versionen bis hin zu älteren Versionen des PostgreSQL-Servers ebenso gründlich sind.

  • 9.6 führte die--strict-names argument
  • 10 führte die --no-blobs --no-publications --no-subscriptions --no-sync Argumente ein

Da die Durchführung der Datensicherung nicht immer lokal auf dem Server selbst erfolgen muss, können hierfür auch unterschiedliche Rechner zur Verfügung stehen (um die Datensicherung remote durchzuführen)

Abhängig vom Betriebssystem und Paketmanager befindet sich die neuere Version von pg_dump wahrscheinlich bereits auf dem Server, wie in /usr/lib/postgresql/Ihre_Serverversion_hier/bin/, Sie können jederzeit einen symbolischen Link zur neuen Version wie folgt erstellen (angenommenes Debian-System):

sudo ln -s --force /usr/lib/postgresql/9.5/bin/pg_dump /usr/bin/pg_dump

verwandte Informationen