Der PostgreSQL-Elefant läuft durch die Stadt und unter ihm sieht man die Kanalisation und andere Infrastruktur
Bild: mit KI erstellt

Die cseTools 2024 unterstützten aktuelle Versionen von PostgreSQL.

Dieser Leitfaden ist in folgenden Fällen relevant:

  • Nutzung von PostgreSQL als Datenbank für ALKIS oder Fachdaten mit separatem Modul
  • Upgrade von früherer Version auf cseTools 2024

Der Leitfaden ist irrelevant, wenn:

  • cseTools erstmalig installiert werden
  • für ALKIS oder Fachdaten bisher nur SQLite als Datenbank genutzt wurde
  • keines der beiden o. g. Module genutzt wird

Der Artikel gibt Hilfestellung zur richtigen Übernahme der Datenbanken auf neues PostgreSQL (am Beispiel der Version 16.3) und was es beider Umstellung der Projekte zu beachten gibt.

Der Umzug auf ein neues Datenbanksystem ist in manchen Fällen eine etwas unübersichtliche Angelegenheit. Wenn Sie jedoch die von uns unten gezeigte Reihenfolge beachten, sollte dies den laufenden Betrieb nicht stören und ein sicheres Upgrade gewährleisten.

  1. Installation PostgreSQL 16.3 (Server)
  2. Datenbank/en von PostgreSQL 9.6 nach 16.3 (Server)
  3. cseTools Upgrade durchführen (Client)
  4. Treiber überprüfen (Client)
  5. ALKIS-Projekte umstellen (Client)
  6. Kanal-/Leitungsprojekte umstellen (Client)
  7. Übergangsphase (Server)

Zusammenfassung: Als erstes wird auf dem Server das neue PostgreSQL-System installiert. Danach werden benutzte Datenbanken übernommen. Wenn dann alles läuft, werden zuletzt noch die Projekte umgestellt, damit die neuen Datenbanken (mit bisherigem Inhalt) genutzt werden. Nach einer empfohlenen Übergangsphase kann das alte Datenbanksystem dann deinstalliert werden.

In diesem Artikel möchten wir Ihnen die Installation des Datenbankservers erklären. Der Artikel ist in mehrere Kapitel unterteilt:

1. Installation PostgreSQL 16.3 (Server)

Installieren Sie die neue PostgreSQL-Version entsprechend unserem Leitfaden auf dem gleichen System, wo aktuell der PostgreSQL 9.6 Server läuft. Achten Sie auf den Hinweis bzgl. des Ports 5434!

2. Datenbank/en von PostgreSQL 9.6 nach 16.3 (Server)

Jetzt müssen die bisher verwendeten Datenbanken von PostgreSQL 9.6 auf das neue System übertragen werden. Hierfür wird einfaches Sichern und Wiederherstellen genutzt.

2.1. Sicherung PostgreSQL 9.6 mit pgAdmin III

Mit dem pgAdmin III auf den bisher genutzten Server verbinden und alle relevanten Datenbanken (für ALKIS und Kanal-/Leitungsdaten) sichern.

Wichtig: Bei den „Dump Optionen #2“ den Haken für „CREATE DATABASE Befehl einschließen“ setzen.

Auf diese Weise müssen alle relevanten Datenbanken gesichert werden.

2.2. Wiederherstellung auf PostgreSQL 16.3 mit pgAdmin 4

Die Wiederherstellung der Datenbanken auf dem neuen Datenbankserver erfolgt mit dem pgAdmin 4. An dieser Stelle ist Voraussetzung, dass dieser bereits installiert und eingerichtet ist, so wie unter 1. Installation PostgreSQL 16.3. (Server) beschrieben.

Nach der Anmeldung am Server Rechtsklick auf die standardmäßig vorhandene Datenbank „postgres“ und den Punkt „Wiederherstellen…“ auswählen.

Per Rechtsklick auf die Standarddatenbank in pgAdmin 4 findet man die Funktion zum Wiederherstellen

Auf der ersten Seite wird die gespeicherte Sicherungsdaten ausgewählt. Wichtig ist noch, bei den Query Options den Haken für „CREATE DATABASE-Anweisung einschließen“ zu aktivieren.

Optionen für Datenbankwiederherstellung mit Hiwensi auf ‚CREATE DATABASE-Anweisung einschließen‘

Unter Umständen tritt dabei ein Fehler auf, dass das Schema „public“ bereits existiert. Dieser Fehler kann ignoriert werden, da die Datenbank samt Inhalt dennoch angelegt wird.

Unkritische  Fehlermeldung beim Wiederherstellen der Datenbank in pgAdmin 4

Dass die Datenbank angelegt wurde, kann man per Rechtsklick auf den übergeordneten Knoten Datenbanken -> Aktualisieren prüfen.

Auf die gleiche Weise werden alle gesicherten Datenbanken wiederhergestellt.

3. cseTools Upgrade durchführen (Client)

Führen Sie jetzt auf den Client-PCs das Update der cseTools wie gewohnt bzw. entsprechend unserer Update-Anleitung durch.

Der benötigte PostgreSQL-Treiber sollte automatisch mit aktualisiert werden. Um sicherzugehen, beachten Sie 4. Treiber überprüfen (Client).

4. Treiber überprüfen (Client)

Überprüfen Sie auf allen Client-PCs, dass der passende PostgreSQL-ODBC-Treiber installiert ist. In der von uns ab cseTools 2024 empfohlenen Kombination hat der Treiber die Version 16.

Windows Startmenü -> Ausführen: „ODBCAD32“

Windows Verwaltung von ODBC-Datenquellen zeigt erwartete PostgreSQL-Treiber Version 16

… oder in der Liste installierter Programme nach psqlODBC_64 suchen, um die Version zu sehen.

Sollte die Version des Treibers nicht passen, muss die Aktualisierung manuell gestartet werden. Führen Sie dafür einfach das mit installierte Setup aus: C:\Program Files\aRES Datensysteme\cseTools\cseGeoNas\psqlodbc_x64.msi.

5. ALKIS-Projekte umstellen (Client)

Jetzt müssen noch alle Projekte, die in irgendeiner Art und Weise auf die Datenbanken zugreifen, umgestellt werden. Das passiert nicht automatisch.

Nach dem Öffnen eines Projekts mit ALKIS-Daten erscheint z. B. zwar der Hinweis, dass die Verbindung zur Datenbank steht, doch der Schein trügt!

Hinweis auf geöffnete ALKIS-Datenbank in BricsCAD, bezieht sich auf alten Datenbankserver

Denn das Projekt ist noch mit der alten ALKIS-Datenbank (PostgreSQL 9.6) verbunden.

Über Einstellungen -> Datenbank müssen jetzt nur noch die neuen Verbindungsparameter eingegeben werden. In erster Linie ist das der Port. Benutzer und Passwort müssen nur neu eingegeben werden, wenn sich diese geändert haben. Der Datenbankname bleibt in jedem Fall unverändert.

Einstellungsdialog der cseTools um neue Verbindungsparameter zur ALKIS-Datenbank einzugeben

6. Kanal-/Leitungsprojekte umstellen (Client)

Das Aktualisieren der Verbindungsparameter bei Projekten, wo die Kanal- und/oder Leitungsdaten in der Datenbank gespeichert sind, wird nur angeboten, wenn der alte Datenbankserver nicht mehr läuft.

Auf dem Server muss also der Dienst „postgresql-9.6“ gestoppt werden, damit die Clients keine Verbindung mehr aufbauen können.

Eigenschaften von postgresql-9.6 Dienst in Windows mit Hinweis zum Beenden und Starttyp

Nachdem das Projekt geöffnet wurde, muss jetzt eines der sonst verwendeten Kanal- oder Leitungsmodule gestartet werden. In diesem Moment wird versucht, die Verbindung zum alten, nicht mehr laufenden Datenbankserver aufzubauen. Man muss ca. 20 Sekunden warten, bis das Timeout überschritten ist.

Jetzt öffnet sich der Dialog zum Anpassen der Verbindungsdaten, wo die des neuen Servers eingegeben werden. In erster Linie ist das der Port. Benutzer und Passwort müssen nur neu eingegeben werden, wenn sich diese geändert haben. Der Datenbankname bleibt in jedem Fall unverändert.

Einstellungsdialog der cseTools um neue Verbindungsparameter zur Kanal-Datenbank einzugeben

7. Übergangsphase (Server)

Jeder Administrator wird für den Umstieg auf aktuelle (Datenbank-)Systeme eigene und bewährte Strategien haben. Um auf Nummer sicher zu gehen, empfehlen wir, den alten Datenbankserver vorerst zu deaktivieren (so wie unter 6. Kanal-/Leitungsprojekte umstellen (Client) beschrieben). Der Starttyp ist auf „manuell“ eingestellt, damit sich der alte Server nicht bei einem Systemneustart wieder einschaltet.

Das Abschalten des Servers hat auch den Vorteil, dass man sofort erkennt, wenn ein Projekt noch nicht auf den neuen Server umgestellt ist. Sensibilisieren Sie Ihre Anwender für die Umstellung, sodass diese bei Problemen hilfreiche Hinweise geben können.

Nach einer Übergangszeit von einigen Wochen oder Monaten kann der alte Datenbankserver PostgreSQL 9.6 dann auch deinstalliert werden.