Installation de PostgreSQL sur plate-forme Linux

Cet article va vous expliquer en détails les différentes étapes nécessaires à l'installation de PostgreSQL sur plate-forme Linux.

Article lu   fois.

L'auteur

Profil ProSite personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Pré-requis

L'installation de PostgreSQL est facile. Néanmoins certains logiciels sont indispensables pour sa compilation alors que d'autres sont facultatifs.

Voici en détail la liste des logiciels indispensables.

  • make : Je conseille une version supérieure ou égale à la version 3.76.
  • GCC : Le compilateur C de GNU
  • gzip : Utilitaire de compression et décompression de fichiers
  • tar : Utilitaire permettant de regrouper plusieurs fichiers ou répertoires dans une archive unique

Voici une liste non exhaustive de logiciels facultatifs.

  • OpenSSL : PostgreSQL peut l'utiliser pour chiffrer les connexions entre l'application cliente psql et le serveur
  • Tcl/Tk : Indispensable pour pouvoir utiliser PgAccess qui est une application d'administration graphique pour PostgreSQL.
  • Jdk : Indispensable si vous développez en Java pour activer le support JDBC (Java DataBase Connectivity)

II. Création d'un administrateur de PostgreSQL

Vous devez tout d'abord créer un utilisateur qui possèdera et gèrera les droits de PostgreSQL. Pour pouvoir créer l'administrateur de PostgreSQL, vous devez posséder les privilèges de l'utilisateur root. Voici la commande pour ajouter un utilisateur en prenant comme exemple l'utilisateur postgres comme administrateur de PostgreSQL:

 
Sélectionnez
su - -c "useradd postgres"

III. Installation des sources de PostgreSQL

Tout d'abord, choisissez un répertoire où vous décompresserez les sources de PostgreSQL. Après avoir placé l'archive dans le répertoire de votre choix, désarchivez-la. Voici la commande pour extraire les fichiers de l'archive:

 
Sélectionnez
tar -xvzf postgresql-version.tar.gz

Afin de permettre à l'administrateur de PostgreSQL de compiler les sources lui-même, rendez-le propriétaire de l'arborescence des sources. La commande modifiant le propriétaire des sources est la suivante:

 
Sélectionnez
chown -R postgres.postgres postgresql-version

IV. Configuration des sources

Cette section va vous permettre de comprendre les options d'installation correspondant à vos besoins. Pour vous permettre de configurer les sources avant leur compilation, nous allons faire appel à un script qui va également effectuer une vérification des dépendances logicielles. Voici la commande nécessaire pour utiliser ce script :

 
Sélectionnez
./configure

Malheureusement cette commande va activer les options de configuration par défaut. Pour connaître toutes les options de compilations fournies avec le script, tapez la commande suivante:

 
Sélectionnez
./configure --help

Beaucoup de personnes ne sachant pas à quoi servent exactement ces options, en voici les explications

  • --with-CXX : vous permettra de construire des applications C++ utilisables avec PostgreSQL
  • --enable-odbc : permettra aux programmes ayant un pilote ODBC de se connecter à PostgreSQL
  • --enable-multibyte : permettra l'emploi de caractères multi-octets.
  • --with-maxbackends=NOMBRE : où NOMBRE sera le maximum de connexions autorisées
  • --prefix=PREFIXE : avec cette option vous indiquerez le répertoire, représenté par PREFIXE, où les fichiers seront installés.
  • --exec-prefix=EXEC-PREFIXE : indiquera le répertoire, représenté par EXEC-PREFIXE, où seront installés les fichiers éxécutables.
  • --bindir=BINDIR : indiquera le répertoire, représenté par BINDIR, où seront installés les éxécutables client.
  • --datadir=DATADIR : indiquera le répertoire, représenté par DATADIR, où seront installés les fichiers utilisée par PostgreSQL.
  • --sysconfdir=SYSCONFDIR : indiquera le répertoire, représenté par SYSCONFDIR, où seront installés les fichiers de configuration système.
  • --libdir=LIBDIR : indiquera le répertoire, représenté par LIBDIR, où seront installés les fichiers bibliothèque.
  • --includedir=INCLUDEDIR : indiquera le répertoire, représenté par INCLUDEDIR, où seront installés les fichiers en-têtes C et C++.
  • --docdir=DOCDIR : indiquera le répertoire, représenté par DOCDIR, où seront installés les fichiers de documentation.
  • --mandir=MANDIR : indiquera le répertoire, représenté par MANDIR, où seront installés les fichiers man.
  • --with-includes=INCLUDES : indiquera la liste des répertoires, représenté par DATADIR et séparés par deux points, à parcourir lors de la recherche des fichiers en-tête.
  • --with-libraries=LIBRARIES : indiquera la liste de répertoires, représenté par LIBRARIES et séparés par deux points, à parcourir lors de la recherche des bibliothèques.
  • --enable-locale : active le support des locales.
    Option à conseiller uniquement dans des environnements où la langue parlée n'est pas l'anglais car elle ralentit les performances.
  • --enable-recode : activera la bibliothèque de traduction des caractères.
  • --enable-multibyte : activera l'encodage multi-octets pur utiliser les caractères non ASCII. Principalement pour les langues asiatiques.
  • --with-pgport=NUMERO : indiquera le port par défaut, représenté par NUMERO, utilisé par PostgreSQL.
  • --with-perl : compilera le module d'interface Perl à l'installation.
    Option nécessaire uniquement si vous utilisez pl/Perl comme langage de procédures.
  • --with-python : identique à l'option --with-perl mais pour pl/Python comme langage de procédures.
  • --with-tcl : identique à l'option --with-perl mais pour pl/Tcl comme langage de procédures.
  • --without-tk : compilera le support Tcl sans Tk.
  • --with-odbcinst=ODBCINST : indiquera le répertoire, représenté par ODBCINST, où le pilote ODBC devra chercher après son fichier de configuration.
  • --with-krb4=KRB4 : active le support du système d'authentification Kerberos.
  • --with-openssl=OPENSSL : activera l'utilisation de SSL et indiquera le répertoire, représenté par OPENSSL, où seront installés les fichiers OpenSSL.
  • --with-java : activera le support JDBC.
  • --enable-syslog : activera le démon de journalisation syslog.
  • --enable-debug : utile uniquement aux dévéloppeurs pour diagnostiquer les bugs.
  • --enable-cassert : utilisée uniquement pour le développement de PostgreSQL car elle ralentit les performances.

V. Compilation des sources

Etape qui suit la configuration des sources.
Voici la commande pour lancer la compilation des sources

 
Sélectionnez
make ou gmake (pour les systèmes bsd)

VI. Tests de régression

Etape consistant à installer les binaires fraîchement compilés ainsi que les fichiers de données.

Commande utilisée pour installer les binaires et les fichiers de données:

 
Sélectionnez
su -c "make install"

Commande utilisée maintenant pour rendre l'administrateur de PostgreSQL propriétaire des répertoires d'installation de PostgreSQL.

 
Sélectionnez
su -c "chown -R postgres.postgres /répertoire/d'installation/des/fichiers"

Attention : pour ces 2 commandes, le mot de passe root sera demandé.

VII. Configuration des variables d'environnement

Etape consistant à faciliter l'execution de certaines tâches.
Voici les différentes instructions à ajouter dans le fichier /etc/profile:

 
Sélectionnez
PATH=$PATH:/répertoire/des/binaires/PostreSQL
MANPATH=$MANPATH:/repertoire/des/pages/man
export PATH MANPATH 

La prochaine étape consiste à configurer la variable d'environnement LD_LIBRARY_PATH pour qu'elle pointe vers le répertoire où ont été installées les bibliothèques partagées.

Voici la commande à lancer pour configurer cette variable:

Bourne Shell:

 
Sélectionnez
LD_LIBRARY_PATH=/répertoire/des/bibliothèques
export LD_LIBRARY_PATH 

C Shell:

 
Sélectionnez
setenv LD_LIBRARY_PATH /répertoire/des/bibliothèques 

VIII. Initialisation et démarrage de PostgreSQL

Après l'initialisation on pourra démarrer le serveur proprement dit.

Commande utilisée pour initialiser la base de données:

 
Sélectionnez
/répertoire/des/binaires/postgresql/initdb -D /répertoire/choisi/pour/la/base

Deux commandes peuvent être utilisées pour le lancement de PostgreSQL

1ère commande:

 
Sélectionnez
/répertoire/des/binaires/postgresql/postmaster -D /répertoire/choisi/pour/la/base -i

Cette commande lancera postmaster au premier plan, c'est à dire que l'invite de shell restera inaccessible tant que l'on n'aura pas tapé les touches Ctrl-C pour mettre fin au processus.

Une deuxième commande généralement conseillée lancera le processus en arrière-plan et permettra par la même occasion de rediriger les informations de déboguage vers un fichier.

2ème commande:

 
Sélectionnez
/répertoire/des/binaires/postgresql/pg_ctl -D /répertoire/choisi/pour/la/base -o "-i" -l /tmp/pgsql.log start

Pour arrêter le postmaster la commande sera quasiment identique à la précédente à part que vous devrez remplacer l'instruction start par l'instruction stop.

Commande d'arrêt du serveur:

 
Sélectionnez
/répertoire/des/binaires/postgresql/pg_ctl -D /répertoire/choisi/pour/la/base -l /tmp/pgsql.log stop

IX. Création d'une base de données

Maintenant que PostgreSQL est lancé nous pouvons créer une nouvelle base de données

Voici la commande pour la création d'une nouvelle base:

 
Sélectionnez
createdb nom_de_la_nouvelle_base

Nous pouvons dès à présent utiliser l'interface en ligne de commande de PostgreSQL

Commande utilisée pour lancer psql:

 
Sélectionnez
psql nom_de_la_nouvelle_base

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2003 Stessy. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.