Skip to content

Docker Migration von Postgres von Version 11 zu 12

Kathleen Neumann edited this page Jun 27, 2023 · 3 revisions

Zuerst muss ein Backup der Datenbank gemacht werden:

  docker-compose exec ubo-db pg_dump -c postgresql://NUTZER:PASSWORT@localhost:5432/DATENBANK > pg.backup.psql

Achtung: Die Daten aus der URL und der Service-Name sind der .env-Datei und docker-compose.yml zu entnehmen. Localhost und der Port bleiben gleich!

Die Größe des backups prüfen:

ls -lah
-rw-r--r--  1 root     root     4,5M Mai 12 14:47 pg.backup.psql

Ist die Datei kleiner als 1K, dann enthält Sie vermutlich eine Fehlermeldung.

Jetzt sollte die Datenbank herunter gefahren werden und die Daten verschoben werden.

(Achtung: die Pfade sind ggf. anders z.B. postgresql)

docker-compose stop
mv docker/postgres-data docker/postgres-data-bak

Alle Container entfernen, die Version in der docker-compose auf 12 stellen und den Datenbank Container neu erzeugen:

docker-compose down
vim docker-compose.yml
docker-compose up -d db

Warten bis die Datenbank neu gestartet ist und anschließen das Backup neu einspielen.

  docker-compose exec -T ubo-db psql -d postgresql://pguser:password@localhost:5432/ubo < pg.backup.psql

Eine Liste von SQL-Kommandos läuft ab.

Die Anwendung neu starten und schauen ob die Anwendung noch ganz ist:

docker-compose up -d
Clone this wiki locally