L’objectif de ce document est d’installer le Système de Gestion de Base de Données PostgreSQL pour les TP SQL en IUT Réseaux & Télécoms (plus particulièrement pour l’Année Spéciale).

Pour réaliser correctement l’installation il sera préférable d’avoir une machine avec un accès internet. De plus, les manipulations seront effectuées à l’aide d’un terminal en ligne de commandes (CLI).

Installation basique de PostgreSQL

Nous allons donc commencer par mettre à jour les dépôts de notre machine, pour cela, nous nous authentifions avec l’utilisateur « root » :

$ su root

Dans le cas d’une machine Ubuntu sur laquelle aucun mot de passe root n’a été défini, nous devons commencer par le créer :

$ sudo passwd root
$ su root

Nous sommes maintenant connecté en tant que super utilisateur. La première étape est de mettre à jour les dépôts de la machine :

# apt-get update

Puis d’installer si ce n’est pas déjà fait le service PostgreSQL :

# apt-get install postgresql --yes

Nous avons dès à présent notre PostgreSQL qui est fonctionnel, et nous allons pour le vérifier nous y connecter. Tout d’abord nous nous connectons sous l’utilisateur qui a été créé lors de l’installation de Postgre, mais avant cela il peut être judicieux de lui définir un mot de passe :

# passwd postgres
# su postgres

Ici aucun mot de passe n’est demandé puisque nous sommes connecté en tant que root, mais si vous tentez de vous connecter sur l’utilisateur « postgres » depuis un utilisateur lambda, une authentification sera requise.

Enfin nous pouvons accéder à Postgre grâce à la commande :

$ psql

Pour quitter Postgre :

# \q

Pour plus de détails sur les options de la commande, vous pouvez vous référer au manuel :

$ man psql

Installation et Configuration d’une application Web pour PostgreSQL

Pour aller plus loin nous allons installer un serveur web Apache2 intégrant Php afin de pouvoir disposer d’une interface graphique de gestion. Dans notre cas nous installerons Adminer, connu pour sa légèreté.

Nous allons donc nous connecter en tant que root et mettre à jour les dépôts :

$ su root
# apt-get update

Puis installer Apache2, Php et les modules complémentaires :

# apt-get install apache2 apache2-utils php php-pgsql libapache2-mod-php --yes

Nous allons supprimer le fichier .html par défaut :

# rm /var/www/html/index.html

Puis télécharger Adminer :

# wget https://github.com/vrana/adminer/releases/download/v4.6.3/adminer-4.6.3.php

Le déplacer dans le répertoire du serveur Apache2 tout en le renommant :

# mv adminer-4.6.3.php /var/www/html/index.php

Et enfin nous allons modifier la configuration de PostgreSQL :

# nano /etc/postgresql/9.6/main/pg_hba.conf

Dans ce fichier, vous devriez trouver cette ligne :

local        all        postgre        peer

Que vous modifierez ainsi :

local        all        postgre        md5

Vous pouvez ensuite sauvegarder et quitter le fichier.

Pour finir, nous allons créer un mot de passe pour notre utilisateur Postgres, pour cela connectez-vous à psql puis :

# ALTER USER postgres WITH ENCRYPTED PASSWORD 'lannion' ;
# \q

Pour prendre en compte nos modifications il faut redémarrer PostgreSQL :

# service postgresql restart

Utiliser l’interface Web Adminer

Pour utiliser Adminer, nous nous rendons sur notre machine et ouvrons un navigateur.

Notre serveur web étant hébergé en local, nous nous y connectons grâce à l’adresse http://127.0.0.1/. Nous arrivons sur la page d’authentification :

Capture.PNG

Nous rentrons les informations ainsi, et si toutes les étapes précédentes ont été correctement suivies, nous voici sur Adminer :

adminer.PNG

Notre serveur PostgreSQL est donc parfaitement fonctionnel et accessible par une interface web grâce à Adminer !

Si vous avez des questions, n’hésitez pas !