Postgresql 12 konfiguriert aber

Hinweis: In dem Thema Postgresql 12 konfiguriert aber gibt es 2 Antworten. Der letzte Beitrag () befindet sich ganz unten auf dieser Seite.
  • Hallo,


    ich habe einen laufenden Postgresql Server, auf dem postgresql10 und 12 installiert sind. Update-alternatives zeigt auf die 12er Version:


    > sudo update-alternatives --config postgresql

    There are 2 choices for the alternative postgresql (providing /usr/lib/postgresql).


    Selection Path Priority Status

    ------------------------------------------------------------

    * 0 /usr/lib/postgresql12 120 auto mode

    1 /usr/lib/postgresql10 100 manual mode

    2 /usr/lib/postgresql12 120 manual mode


    Dennoch läuft der Postgresql-Server auf Version 10:

    > psql

    psql (12.4, server 10.14)


    Ist die Annahme richtig, dass beim starten von postgresql nicht einfach blind die 12er Version gestartet wird, so wie von update-alternatives vorgegeben, sondern die Version der Datenfiles in /var/lib/pgsql/data ausschlaggebend sind und daher die 10er Version gestartet wird.


    Ich frage, da ich ein upgrade auf 12 machen möchte. Bin mir aber unsicher, ob ein initdb direkt Datendateien für die 12er Version anlegt oder ich noch etwas spezielles angeben muss.


    Danke.

    Für den Inhalt des Beitrages 284716 haftet ausdrücklich der jeweilige Autor: fred_feuer

  • Code
    update-alternatives --config postgresql
    Es gibt nur eine Alternative in Link-Gruppe postgresql (die /usr/lib/postgresql bereitstellt): /usr/lib/postgresql12
    Nichts zu konfigurieren.

    Aber kein Server:

    Für den Inhalt des Beitrages 284718 haftet ausdrücklich der jeweilige Autor: Sauerland

  • Man kann mehrere Versionen von postgres laufen lassen.

    Ich würde empfehlen, das explizit mit

    systemctl start postgres-<VersionsNummer>.service zu starten.

    (Manche Distris verwenden evtl. auch systemctl start postgres@<VersionsNummer>.service )

    Guckst du mal hier: https://people.planetpostgresq…n-parallel-on-RHEL-7.html


    Hintergrund ist schlicht, dass bestimmte, "große" DB- Projekte sich auf eine Version festlegen und dann natürlich auch genau die haben müssen, damit sie korrekt laufen können. (Richtig große Klopfer kannst du i.d.R. nicht ohne weiteres mit anderen Versionen betreiben)


    Mit systemctl -a | grep -i postgres findest du alle Versionen, die bei dir direkt aufgerufen werden können.