Demo Daten löschen

Hallo @muplagama und @richard

bezüglich dem Einspielen der oben genannten Migrations-Scripte ins System könnt ihr folgendermaßen vorgehen:

  • erstmal ein komplettes Backup der Datenbank erstellen :wink:
  • bei laufendem docker-compose project
  • via docker exec -it metasfresh-docker_db_1 /bin/bash auf den DB-Server einloggen
  • ein neues Verzeichnis (z.B. /cleanup_scripts) innerhalb des Containers anlegen
  • wieder aus dem Container ausloggen (exit)
  • via docker cp die SQL-Scripte in das neu erstellte Verzeichnis im Container kopieren ( https://docs.docker.com/engine/reference/commandline/cp/ )
  • wieder in den Container einloggen (via docker exec -it … siehe oben)
  • auf den Benutzer postgres wechseln (su postgres)
  • die SQL-Scripte auf die Datenbank metasfresh via psql anwenden (psql -d metasfresh -f /cleanup_scripts/*.sql )

Dadurch werden die Befehle innerhalb der SQL-Dateien direkt in die Datenbank eingespeist.
Es gibt mit Sicherheit auch eine kürzere, direkte Methode um die SQL-Dateien einzuspielen aber das oben geschriebene Verfahren ist am einfachsten, wenn man nicht so tief in der Docker-Materie steckt.

Nach dem Einspielen der SQL-Skripte solltet ihr den kompletten metasfresh-docker Stack neustarten (docker-compose down && docker-compose up -d).

Mit diesem Vorgehen könnt ihr auch eigene SQL-Dateien in die Datenbank einspielen.

Wenn ihr nur eine einzige Query durchführen möchtet, könnt ihr das übrigens auch wie folgt machen:

docker exec -u postgres metasfresh-docker_db_1 psql -d metasfresh -c "SELECT * FROM sometable;"
2 Likes