# Faire du PostgreSQL à la maison

V1 de cette page du page, cette méthode n'est probablement pas optimale, ni adapté à tout les besoins, mais elle marchera pour tous les utilisateurs windows et permet une désinstallation facile (suppression de l'archive et du dossier associé + le lieu de stockage de la base de donné)

## ToDo:

Ajouter pour les autres systèmes d'exploitation.

## Installation using windows binaries

#### Sur votre navigateur internet préféré (Chrome, Edge, Opera...)

[https://www.postgresql.org/](https://www.postgresql.org/ "https://www.postgresql.org/")

→ Download

[https://www.postgresql.org/download/](https://www.postgresql.org/download/ "https://www.postgresql.org/download/")

→ Windows

[https://www.postgresql.org/download/windows/](https://www.postgresql.org/download/windows/ "https://www.postgresql.org/download/windows/")

→ Zip archive [https://www.enterprisedb.com/download-postgresql-binaries](https://www.enterprisedb.com/download-postgresql-binaries "https://www.enterprisedb.com/download-postgresql-binaries")

→ Version 13.16 (Version de l'école 13.X ?)

→ Windows

[https://get.enterprisedb.com/postgresql/postgresql-13.16-2-windows-x64-binaries.zip](https://get.enterprisedb.com/postgresql/postgresql-13.16-2-windows-x64-binaries.zip "https://get.enterprisedb.com/postgresql/postgresql-13.16-2-windows-x64-binaries.zip")

→ Choisir où mettre le dossier zippé (par exemple dans vos Téléchargements)

→ Devrait télécharger une archive dont le nom est de la forme: \`postgresql-13.16-2-windows-x64-binaries.zip\`

#### Dans votre explorateur de fichier

→ Dézipper l'archive `postgresql-13.16-2-windows-x64-binaries.zip` (cf Comment dezipper une archive…)

→ Aller le nouveau dossier créé: `postgresql-13.16-2-windows-x64-binaries`

→ Puis dans: `pgsql`

→ Puis dans: `bin`

→ Copier le chemin d'accès vers ce dossier bin, par exemple: \`D:\\Users\\votrenomdutilisateur\\Downloads\\postgresql-13.16-2-windows-x64-binaries\\pgsql\\bin\`

→ Ouvrir un terminal `cmd` (Ligne de commande / Command prompt)

→ Taper la commande: `cd "D:\Users\votrenomdutilisateur\Downloads\postgresql-13.16-2-windows-x64-binaries\pgsql\bin"`

→ Puis, taper la commande: `initdb.exe [Drive letter]:/[path/to/where/you/want/to/store/your/db]`


1. Par exemple: `initdb.exe "D:\Users\votrenomdutilisateur\Documents\messuperbasesdedonnee"` pour créer le lieu de stockage des bases de donnée

→ Cela créé le lieu où seront stockées les informations sur vos bases de données

→ Lancer la commande: `pg_ctl.exe -D ^"[Drive letter]^:^\[path^\to^\where^\you^\want^\to^\store^\your^\db]^\" -l logfile start`


1. Les chevrons "^" sont nécessaires pour que le client SQL interprète correctement le chemin d'accès au dossier (escape character)
2. Par exemple: `pg_ctl.exe -D ^"D:^\Users^\votrenomdutilisateur^\Documents^\messuperbasesdedonnee^" -l logfile start`

→ Lancer la commande: `createdb.exe [le nom de votre base de donnee]` pour créer une base de donnée (vide)


1. Par exemple: `createdb.exe tp_1` (si vous êtes le seul sur votre machine à utiliser cette base de donnée)
2. Par exemple: `createdb.exe tp_1_monnomdutilisateur` (si vous êtes plusieurs à utiliser le même espace de stockage des bases de donnée (`[Drive letter]:/[path/to/where/you/want/to/store/your/db]` et avec les mêmes noms de base de donnée)

→ Télécharger les fichiers de configuration des bases de donnée utiliser en TP (cf pydio.pedago.ensiie.fr avec nom d'utilisateur et mdp ensiie)


1. par exemple: nom d'utilisateur: prenom.nomdefamille
2. par exemple: lieu des fichiers de configuration: `PUB/FISE_CBDR11/tp_sql_lmd`
3. procédures de remplissage de votre base de donnée: `create_vins.sql`, `fill_all.sql`

→ Lancer la commande: \`psql.exe -d [le nom de votre base de donnée]\` pour charger la base de donnée


1. Par exemple: `psql.exe tp_1`
2. `\q` pour quitter

→ Copier le chemin d'accès vers un fichier sql:


1. shift + clique droit sur un fichier SQL > copier le chemin d'acces à ce fichier / copy as path

→ Remplisser votre base de donnée avec:


1. `\i <Ctrl + V>`: `\i "D:\Users\monnomdutilisateur\Downloads\fill_all.sql"`