Hallo zusammen, ich bin heute auf dieses Problem gestoßen. Das Symptom war, dass wir seit etwa 6 Tagen Warnungen erhielten, dass Backups fehlschlagen, und die wichtigsten Log-Zeilen schienen zu lauten:
[2025-06-14 03:30:20] pg_dump: error: aborting because of server version mismatch
[2025-06-14 03:30:20] pg_dump: detail: server version: 16.9; pg_dump version: 15.12 (Debian 15.12-1.pgdg120+1)
Ich betreibe Discourse unter Ubuntu auf einem Digital Ocean Droplet und verwende die empfohlene Installationsanleitung. Aber ich verwende die Managed Postgres-Datenbank von Digital Ocean anstelle eines Postgres-Containers. Wenn ich mir meine Datenbank ansehe, läuft sie mit pg 16. Ich glaube nicht, dass sie sie kürzlich aktualisiert haben (und ich würde sowieso keine automatische Hauptversionsaktualisierung erwarten), aber ich habe ihren Support per E-Mail kontaktiert, um dies zu überprüfen.
Jedenfalls führte meine Recherche zu dieser Seite. Ich war mir nicht sicher, wo ich das YAML platzieren sollte, das @pfaffman gepostet hat, also habe ich die Befehle manuell ausgeführt und dachte, ich würde sie für alle anderen teilen, die auf dieses Problem stoßen:
cd /var/discourselauncher enter appapt list --installed | grep postgres# um zu bestätigen, dass die aktuell installierte Version 15 istapt-get updateapt-get remove postgresql-client-15apt-get install postgresql-client-16
Ich habe dann ein manuelles Backup auf der Admin-Backup-Seite ausgelöst.
Dies scheint das Problem vorübergehend behoben zu haben, aber wie @pfaffman angemerkt hat, erwarte ich, dass bei der nächsten Discourse-Aktualisierung zu postgresql-client-15 zurückgekehrt wird und Backups wieder fehlschlagen, was die oben genannte manuelle Intervention erfordert.
Gibt es eine Lösung für dieses Problem, abgesehen davon, dass ich diese Schritte jedes Mal wiederholen muss, wenn ich Discourse aktualisiere?