Installer PostgreSQL sur Debian
décembre 8, 2015 8:47 Laissez vos commentairesBonjour à tous,
Dans ce tutoriel nous allons installer le SGBDR Postgres en version 9.4 sur une distribution linux Debian 8 64bit.
Configuration de base de Debian
Configuration de l’adresse IP statique :
root@mail:~# nano /etc/network/interfaces auto eth0 iface eth0 inet static address 192.168.1.10 netmask 255.255.255.0 gateway 192.168.1.1
nano /etc/resolv.conf name server 192.168.1.1 name server 8.8.8.8
/etc/init.d/networking restart
Si vous voulez utiliser le compte root en ssh, je vous conseille de suivre l’article
Debian – Autoriser le compte root en ssh
Installation de Postgres
Sans compilation
Ajout du dépôt :
Ajoutez les ligne suivantes dans le fichier /etc/apt/sources.list 1
deb http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main 9.4 deb-src http://apt.postgresql.org/pub/repos/apt/ jessie-pgdg main 9.4
Ajout de la signature numérique du dépôt :
wget -O - http://apt.postgresql.org/pub/repos/apt/ACCC4CF8.asc | apt-key add -
Mise à jour des packages :
apt-get update
installation :
apt-get install postgresql-9.4 postgresql-contrib-9.4
Avec compilation
Dans cet exemple, nous allons compiler postgres avec le module SSL afin de sécuriser les échanges entre le serveur et les connexions clientes.
Prérequis : installer gcc (compris dans les build essential)
apt-get install build-essential apt-get install postgresql-client apt-get install libssl-dev
apt-get install libreadline6-dev apt-get install zlib1g zlib1g-dev
(ou ajouter l’argument –without-readline pour désactiver le support readline
et –without-zlib pour désactiver le support de Zlib)
Télécharger les sources sur le site de postgresql :
http://www.postgresql.org/ftp/source/
Copiez le fichier tar.gz dans tmp (via scp par example)
Décompression et installation :
tar -xvzf postgresql-9.4.5.tar.gz cd postgresql-9.4.5/ ./configure --with-openssl make make install cd contrib make make install
PostgreSQL doit maintenant être installé dans son dossier par défaut, à savoir /usr/local/pgsql.
Enregistrement des répertoires dans les variables d’environnement :
export PATH=$PATH:/usr/local/pgsql/bin export LD_LIBRARY_PATH=/usr/local/pgsql/lib
En cas de problème de version d’OS :
export LD_LIBRARY_PATH="/usr/lib64"
Ajout de l’utilisateur postgres
adduser postgres
Script de démarrage:
cd /tmp/postgresql-9.4.5 cp contrib/start-scripts/linux /etc/init.d/postgresql chmod a+x /etc/init.d/postgresql
Vérifiez les variables prefix et pgdata dans le script :
nano /etc/init.d/postgresql
Enregistrez et démarrez postgres :
update-rc.d postgresql defaults invoke-rc.d postgresql start
Configuration de base
Commençons par modifier le mot de passe de l’utilisateur par défaut postgres
passwd postgres
Nous allons ensuite créer le dossier dans lequel seront stockées les différentes base de données. Nous prenons le cas d’une installation avec compilation, vous devez simplement modifier les chemins si vous avez installé postgres sans compilation. Les commandes sont identiques.
mkdir -p /var/local/pgsql/data cd /var/local/pgsql/data chown -R postgres:postgres data/ chmod -R 700 data/
Initialisation d’une instance
Nous avons donc créé un espace de stockage appelé data (notre conteneur de bases de données). Nous pourrions en créer d’autres, avec pour chacun leurs propres fichiers de configuration. Il est donc possible de créer plusieurs instances différentes de Postgres sur un même serveur de base de données (avec des ports différents).
Il existe une multitude d’arguments à la commande initdb, je vous laisse pour cela consulter la doc officielle sur le site portgresqlfr.org.
su postgres /usr/local/pgsql/bin/initdb --encoding=UTF8 --locale=fr_FR.utf8 -D /usr/local/pgsql/data
puis démarrez le serveur :
cd /usr/local/pgsql/bin/ ./pg_ctl -D /usr/local/pgsql/data start
Vous pouvez créer d’autres instances avec un initdb sur un autre répertoire que data.
(Modification du port dans le fichier postgresql.conf) voir l’article correspondant
Postgresql – créer une nouvelle instance
Notes:
- Pour connaître le nom de la version de votre Debian, vous pouvez utiliser la commande lsb_release -cs. Dans notre tuto, il s’agit de la version 8, nommée Jessie ↩
Classés dans :Postgresql
Cet article a été écrit par admin