# 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. ```bash 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. ```bash docker compose --env-file docker/.env.docker.local exec -T db psql -U $POSTGRES_USER -d $POSTGRES_DB -v ON_ERROR_STOP=1 -c "SET session_replication_role = replica;" docker compose --env-file docker/.env.docker.local exec -T db psql -U $POSTGRES_USER -d $POSTGRES_DB -v ON_ERROR_STOP=1 < data_norm.sql docker compose --env-file docker/.env.docker.local exec -T db psql -U $POSTGRES_USER -d $POSTGRES_DB -v ON_ERROR_STOP=1 -c "SET session_replication_role = DEFAULT;" ``` ## 4) Verifier ```bash docker compose --env-file docker/.env.docker.local exec -T db psql -U $POSTGRES_USER -d $POSTGRES_DB -c "\\dt" ```