Ich habe es nach einiger Zeit geschafft, eine Postgres8.4.6 Datenbank voll mit wichtigsten Daten auf die Version 13 über die Version 9.5.25 (postgresql-9.6.24-1-windows-x64.exe ginge mit --install_runtimes 0 im cmd) zu bringen. Leider wurde nicht alles übernommen, vorallem die ehealth-Datenbank (Speicherplatzmäßig die größte aber auch die jüngste Datenbank wegen der voluminösen KIM-Nachrichten) wurde komplett weggelassen. Postgresql 13 unter windows server 2012? Ich weiß jetzt auch den Fehler:
Das batch-Datei des Herstellers der Primärsoftware war nutzlos aber eine Vorlage, sich mit dumpall und dem Einspielen zu beschäftigen. Von postgres8 wird ein dumpall erstellt, in 9.5 eingespielt und von 9.5 wieder ein dumpall erstellt bzw. ab jetzt kann man das Skript benutzen, es installiert postgres13 und spielt den dump der Version 9.5.25 ein plus ein paar andere Konfigurationen.
Der Fehler war, dass ich die Fehlversuche nicht gelöscht hatte. Der Ordner /PostgreSQL13 inkl. /data hätten zumindest unbenannt werden sollen, deswegen gab es ja beim vorletzten Versuch lauter Fehler mit “… already exists”. postgresql - Is it possible to overwrite database records from dump? - Stack Overflow Ich hätte Postgres13 deinstallieren und den Ordner PostgreSQL13 zumindest umbenennen sollen, weil ja der relevante Teil /data nach einer Deinstallation erhalten bleibt.
Beim letzten Versuch habe ich besagten Ordner unbenannt, alles nochmal von vorne und … es ist zu 99 % perfekt. Konnte jetzt nicht alles testen, eine Fehlermeldung im Primärsystem verwirrt aber es geht alles, was auf dem alten System nicht ging aber gehen sollte (gehören zu den wichtigeren Funktionen).
Folgendes Problem: Seit Oktober wurde nun die Fehlerhafte Datenbank mit Daten gefüll. Mein Fehler war es, dass ich der Firma des Primärsystems vertraute und dachte, die würden sich früh melden und den Fehler korrigieren. Ein Fehler ließ sich durch Löschen(?) einer Datenbank reparieren, die Datenbank gehört zu einem E-Mail Programm, welches KIM-Nachrichten senden und empfängt. KIM-Nachrichten versenden ist wichtig, also füllte ich das Programm aus und… es funktionierte nicht, fehler in der Datenbank. Sowas hatte ich schon November 2021 weil ich so viel mit dem Programm gearbeitet habe, bis die Datenbank den Dienst verweigerte. Der Hersteller schaltete sich kurz darauf ein, reparierte die Datenbank, ich füllte wieder die POP3 und SMTP Daten in das Programm und es lief alles geschmiert. Ich dachte, die würden das wieder machen => Fehlanzeige!
Seit Oktober wird dann also die Fehlerhafte Datenbank gefüllt, weil ich naiv war und dachte, die Firma wird schon zumindest an diesem Punkt der Datenbank helfen. Dummer Fehler.
Die Zeit verging und ich besorgte mir eine SSD.
Festplatten sind bekanntlich langsam und ich wollte nicht wieder Zeit verschwenden wegen dumpall und einspielen. Also klonte ich die Festplatte auf die SSD und begann nochmal von Null. dumpall von der 9.5.25, einspielen in postgres13.12 und… es ist alles zu 99 % perfekt (gestern Abend die Grundfunktionen getestet). Problem bei dem ich jetzt hilfe benötige: Die Daten sind alt und die Daten seit dem 03.10.2023 sind nicht in der guten postgres13 Datenbank auf der SSD. Hingegen sind praktisch alle Daten im postgres13 auf der Festplatte, nur die ehealth-datenbanken sind ganz leer. Wie kann man die daten von postgres13 der Festplatte auf postgres13 auf der SSD übertragen?
Eine Möglichkeit, die ich der Praxis sagte war, einfach neu eintippen, heißt, postgres13 festplatte starten, alle dokumente ein termin-einträge drucken, notizen anfertigen. Dann postgres13 SSD starten und alles reintippen. Geht das auch eleganter? pg_restore oder so?
Ich hätte zumindest die postgres 9.5.25 datenbank weiterfüllen lassen sollen, es war falsch von mir, in einer fehlerhafen DB Daten schreiben zu lassen. Mein Problem war die Frist, die die Firma setzte, weil in Kürze nur noch postgres 13 supported wird.
Nur zur Info: Das Primärsystem funktioniert nicht mit postgres14-16. Ich versuchte eine Datenbanksicherung mit postgres16 IM primärsystem (weiß nicht genau was da passiert ein paar megabyte werden da geschrieben): es kommt zu einem fehler, welches m. M. n. der postgresversion14-16 geschuldet ist.