Files
Inventory/migratebdd.md
2026-01-25 12:02:20 +01:00

1.1 KiB

Migration DB (manuel)

Ce guide explique comment importer un dump SQL venant de pgAdmin dans la base Docker.

1) Export pgAdmin

Dans pgAdmin:

  • Format: Plain
  • Options: Use INSERT commands + Use column inserts
  • Fichier: data.sql

2) Normaliser le dump

Convertit les colonnes camelCase en lowercase compact.

python3 scripts/normalize-dump.py data.sql data_norm.sql --lower

3) Importer dans la base Docker

Utilise session_replication_role pour eviter les erreurs de contraintes circulaires.

docker compose --env-file docker/.env.docker.local exec -T db psql -U root -d inventory -v ON_ERROR_STOP=1 -c "SET session_replication_role = replica;"
docker compose --env-file docker/.env.docker.local exec -T db psql -U root -d inventory -v ON_ERROR_STOP=1 < data_norm.sql
docker compose --env-file docker/.env.docker.local exec -T db psql -U root -d inventory -v ON_ERROR_STOP=1 -c "SET session_replication_role = DEFAULT;"

4) Verifier

docker compose --env-file docker/.env.docker.local exec -T db psql -U $POSTGRES_USER -d $POSTGRES_DB -c "\\dt"