Outils pour utilisateurs

Outils du site


informatique:versionnement_dev_bdd

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
informatique:versionnement_dev_bdd [2022/06/14 16:03] – [Mise en pratique] bertrandinformatique:versionnement_dev_bdd [2022/09/08 11:37] (Version actuelle) – [Mise en pratique] bertrand
Ligne 18: Ligne 18:
  
 ===== Déploiement en "production ===== ===== Déploiement en "production =====
-Une fois le développement et les tests finaliser localement, il suffit de les exécuter sur le serveur de production, soit via DBeaver s'il a accès à la base de données, soit via la CLI… par exemple :\\+Une fois le développement et les tests finalisés localement, il suffit de les exécuter sur le serveur de production, soit via DBeaver s'il a accès à la base de données, soit via la CLI… par exemple :\\
 <code bash>docker exec -i nom_du_conteneur /bin/bash -c "psql -U mon_db_user -d nom_de_la_base" < mon_chemin/mon_script_de_migration.sql</code> <code bash>docker exec -i nom_du_conteneur /bin/bash -c "psql -U mon_db_user -d nom_de_la_base" < mon_chemin/mon_script_de_migration.sql</code>
  
Ligne 54: Ligne 54:
 On applique ce script : On applique ce script :
 <code bash> <code bash>
-docker exec -i tutorial /bin/bash -c "psql -U postgres" < database/1_create_schema_and_fist_table.sql+docker exec -i tutorial /bin/bash -c "psql -U postgres -d tutorial" < database/1_create_schema_and_first_table.sql
 </code> </code>
-On peut vérifier avec DBeaver ou psql que la base/schéma/table ont bien été créé. TODO pourquoi je retrouve mon schéma dans la base POSTGRES et non tutorial ??+On peut vérifier avec DBeaver ou psql que la base/schéma/table ont bien été créé. Dans la commande ci-dessus, l'option //-d tutorial// qui permet de préciser la base de données contenant le schéma est importante sinon on retrouve le schéma dans la base POSTGRES et non tutorial !
  
 On commence notre versionnement : On commence notre versionnement :
 <code bash> <code bash>
 git init # inutile si associé à un projet existant qui est déja versionné git init # inutile si associé à un projet existant qui est déja versionné
-git add 1_create_schema_and_fist_table.sql+git add 1_create_schema_and_first_table.sql
 git commit -m "init et ajout du schema initial" git commit -m "init et ajout du schema initial"
 </code> </code>
-On peut faire aussi une copie de //1_create_schema_and_fist_table.sql// vers //tutorial_location.sql//. Les fichiers //1_//, //2_// (ou un préfixe de date AAAAMMJJ) ne contiendront que les scripts de migration (et n'évolueront donc pas), en revanche le fichier //tutorial_location.sql// pourra recevoir régulièrement un export complet de la base et servir ainsi à un nouveau développeur (qui pourrait repartir d'un dump de sauvegarde pour avoir des données avec)+On peut faire aussi une copie de //1_create_schema_and_first_table.sql// vers //tutorial_location.sql//. Les fichiers //1_//, //2_// (ou un préfixe de date AAAAMMJJ) ne contiendront que les scripts de migration (et n'évolueront donc pas), en revanche le fichier //tutorial_location.sql// pourra recevoir régulièrement un export complet de la base et servir ainsi à un nouveau développeur (qui pourrait repartir d'un dump de sauvegarde pour avoir des données avec)
  
 ===== Modification du modèle ===== ===== Modification du modèle =====
informatique/versionnement_dev_bdd.1655215432.txt.gz · Dernière modification : 2022/06/14 16:03 de bertrand