Documentation PostgreSQL 7.4.29 | ||||
---|---|---|---|---|
Précédent | Arrière rapide | Chapitre 14. Procédure d'installation | Avance rapide | Suivant |
Configuration
La première étape de la procédure d'installation est de configurer votre arborescence système et de choisir les options qui vous intéressent. Ce qui est fait en exécutant le script configure. Pour une installation par défaut, entrez simplement
./configure
Ce script exécutera de nombreux tests afin de déterminer les valeurs de certaines variables dépendantes du système et de détecter certains aléas relatifs à votre système d'exploitation. Il créera divers fichiers dans l'arborescence de compilation pour enregistrer ce qui a été trouvé (vous pouvez aussi exécuter configure à partir d'un répertoire hors de l'arborescence des sources si vous voulez conserver l'arborescence de compilation séparé).
La configuration par défaut compilera le serveur et les utilitaires, aussi bien que toutes les applications clientes et interfaces qui requièrent seulement un compilateur C. Tous les fichiers seront installés par défaut sous /usr/local/pgsql.
Vous pouvez personnaliser les processus de compilation et d'installation en mettant une ou plusieurs options sur la ligne de commande après configure :
Installe tous les fichiers dans le répertoire PREFIX au lieu du répertoire /usr/local/pgsql. Les fichiers actuels seront installés dans divers sous-répertoires ; aucun fichier ne sera directement installés sous PREFIX.
Si vous avez des besoins spécifiques, vous pouvez de plus personnaliser les sous-répertoires à l'aide des options suivantes.
Vous pouvez installer les fichiers dépendants de l'architecture dans un répertoire différent, EXEC-PREFIX, de celui donné par PREFIX. Ce qui peut être utile pour partager les fichiers dépendants de l'architecture entre plusieurs machines. Si vous l'omettez, EXEC-PREFIX est égal à PREFIX et les fichiers dépendants seront installés sous la même arborescence que les fichiers indépendants de l'architecture, ce qui est probablement ce que vous voulez.
Spécifie le répertoire des exécutables. Par défaut, il s'agit de EXEC-PREFIX/bin, ce qui signifie /usr/local/pgsql/bin.
Prépare le répertoire pour des fichiers de données en lecture seule utilisés par les programmes d'installation. Par défaut, il s'agit de PREFIX/share. Il est bon de noter que cela n'a rien à voir avec l'emplacement des fichiers de votre base de données.
Le répertoire contenant divers fichiers de configuration. Par défaut, il s'agit de PREFIX/etc.
L'endroit où installer les bibliothèques et les modules chargeables dynamiquement. Par défaut, il s'agit de EXEC-PREFIX/lib.
Le répertoire où sont installées les en-têtes C et C++. Par défaut, il s'agit de PREFIX/include.
Les fichiers de documentation, sauf les pages << man >>, seront installés dans ce répertoire. Par défaut, il s'agit de PREFIX/doc.
Les pages man fournies avec PostgreSQL seront installées sous ce répertoire, dans leur sous-répertoire manx respectif. Par défaut, il s'agit de PREFIX/man.
Note : Une attention toute particulière a été prise afin de rendre possible l'installation de PostgreSQL dans des répertoires partagés (comme /usr/local/include) sans interférer avec des noms de fichiers relatifs au reste du système. En premier lieu, le mot << /postgresql >> est automatiquement ajouté au répertoire datadir, sysconfdir et docdir, à moins que le nom du répertoire à partir de la racine contienne déjà le mot << postgres >> où << pgsql >>. Par exemple, si vous choisissez /usr/local comme préfixe, la documentation sera installée dans /usr/local/doc/postgresql, mais si le préfixe est /opt/postgres, alors il sera dans /opt/postgres/doc. Les fichiers d'en-têtes publiques C de l'interface cliente seront installés sous includedir et sont propres par rapport aux noms de fichiers relatifs au reste du système. Les fichiers d'en-têtes privés et les fichiers d'en-têtes du serveur sont installés dans des répertoires privés sous includedir. Voir la documentation de chaque interface pour savoir comment obtenir ces fichiers d'en-tête. Enfin, un répertoire privé sera aussi créé si nécessaire sous libdir pour les modules chargeables dynamiquement.
REPERTOIRES est une liste de répertoires séparés par des caractères deux points (:) qui sera ajoutée à la liste de recherche des fichiers d'en-tête. Si vous avez des paquetages optionnels (tels que Readline GNU) installés dans des répertoires non conventionnels, vous pouvez utiliser cette option et certainement l'option --with-libraries correspondante.
Exemple : --with-includes=/opt/gnu/include:/usr/sup/include.
REPERTOIRES est une liste de recherche de répertoires de bibliothèques séparés par des caractères deux points (:). Vous aurez probablement à utiliser cette option (et l'option correspondante --with-includes) si vous avez des paquetages installés dans des répertoires non conventionnels.
Exemple : --with-libraries=/opt/gnu/lib:/usr/sup/lib.
Permet de mettre en place le support des langues natives (NLS). C'est la possibilité d'afficher les messages des programmes dans une langue autre que l'anglais. LANGUE est une liste de codes des langues que vous voulez supporter séparés par un espace. Par exemple, --enable-nls='de fr' (l'intersection entre votre liste et l'ensemble des langues traduites actuellement sera calculée automatiquement). Si vous ne spécifiez pas de liste, alors toutes les traductions disponibles seront installées.
Pour utiliser cette option, vous avez besoin d'une implémentation de l'API Gettext ; voir après.
Positionne NUMERO comme numéro de port par défaut pour le serveur et les clients. La valeur par défaut est 5432. Le port peut toujours être changé ultérieurement mais, si vous le faites ici, alors les exécutables du serveur et des clients auront la même valeur par défaut, ce qui est vraiment très pratique. Habituellement, la seule bonne raison de choisir une valeur autre que celle par défaut est que vous souhaitez exécuter plusieurs serveurs PostgreSQL sur la même machine.
Permet l'utilisation du langage PL/Perl côté serveur.
Permet la compilation du langage de procédures PL/Python.
Compile les composants demandés par Tcl/Tk, qui sont libpgtcl, pgtclsh, pgtksh, et PL/Tcl. Voir après au sujet de --without-tk.
Si vous spécifiez --with-tcl et cette option, alors le programme qui nécessite Tk (pgtksh) sera exclu.
Tcl/Tk installe les fichiers tclConfig.sh et tkConfig.sh, ces fichiers contiennent certaines informations de configuration nécessaires pour compiler le module d'interfaçage avec Tcl ou Tk. Ces fichiers sont normalement trouvés automatiquement à leur place bien connue, mais si vous voulez utiliser une version différente de Tcl ou Tk, vous pouvez spécifier le répertoire où les trouver.
Compile le pilote JDBC et les paquetages java associés.
Compile le support d'authentification Kerberos. Vous pouvez utiliser soit la version 4 soit la version 5 de Kerberos, mais pas les deux. L'argument REPERTOIRE spécifie le répertoire racine de l'installation de Kerberos. La valeur /usr/athena est prise par défaut. Si les fichiers d'en-tête et bibliothèques correspondants ne sont pas sous un répertoire commun, vous devez utiliser les options --with-includes et --with-libraries en plus de cette option. Si, d'autre part, les fichiers requis sont dans un répertoire qui fait partie de la liste de recherche par défaut (par exemple /usr/lib), alors vous pouvez ne pas tenir compte de cet argument.
configure cherchera les en-têtes et bibliothèques requis pour s'assurer que votre installation de Kerberos est correcte avant d'effectuer la compilation.
Le nom du service principal de Kerberos. postgres est pris par défaut. Il n'y a probablement pas de raison de le changer.
Compile le support de connexion SSL (cryptage). Il est nécessaire que le paquetage OpenSSL soit installé. L'argument REPERTOIRE spécifie la racine du répertoire d'installation de OpenSSL ; la valeur par défaut est /usr/local/ssl.
configure cherchera les en-têtes et bibliothèques requis pour s'assurer que votre installation d'OpenSSL est correcte avant de lancer la compilation.
Compile le support PAM (Modules d'Authentification Pluggable).
Évite l'utilisation de la bibliothèque Readline. Cela désactive l'édition de la ligne de commande et l'historique dans psql, ce n'est donc pas recommandé.
Compile le support Rendezvous.
Autorise le succès de la construction y compris lorsque PostgreSQL n'a pas le support spinlock du CPU pour la plateforme. Ce manque de support résultera en des performances faibles ; du coup, cette option devra seulement être utilisée si la construction échoue et vous informe du manque de support de spinlock sur votre plateforme.
Rend les bibliothèques clientes compatibles avec les threads. Ceci permet des threads concurrents dans les programmes libpq et ECPG ce qui leur permet de gérer en toute sûreté leur connexions privées.
Évite l'utilisation de la bibliothèque Zlib. Cela désactive le support de la compression dans pg_dump. Cette option est seulement là pour les rares systèmes qui ne disposent pas de cette bibliothèque.
Compile tous les programmes et bibliothèques en mode de débogage. Cela signifie que vous pouvez exécuter les programmes via un débogueur pour analyser les problèmes. Cela grossit considérablement la taille des exécutables et, avec des compilateurs autres que GCC, habituellement, cela désactive les optimisations du compilateur, provoquant des ralentissements. Cependant, mettre ce mode en place est extrêmement utile pour repérer les problèmes. Actuellement, cette option est recommandée pour les installations en production seulement si vous utilisez GCC. Néanmoins, vous devriez l'utiliser si vous développez ou si vous utilisez une version béta.
Permet la vérification des assertions par le serveur qui teste de nombreux cas de conditions << impossibles >>. Ce qui est inestimable dans le cas de développement, mais les tests ralentissent le système. Activer cette option n'influe pas sur la stabilité de votre serveur ! Les assertions vérifiées ne sont pas classées par ordre de sévérité et il se peut qu'un bogue anodin fasse redémarrer le serveur s'il y a un échec de vérification. Actuellement, cette option n'est pas recommandée dans un environnement de production mais vous devriez l'utiliser lors de développement ou pour les versions béta.
Active la recherche automatique des dépendances. Avec cette option, les fichiers makefile sont appelés pour recompiler les fichiers objet dès qu'un fichier d'en-tête est modifié. C'est pratique si vous faites du développement, mais inutile si vous ne voulez que compiler une fois et installer. Pour le moment, cette option ne fonctionne qu'avec GCC.
Si vous préférez utiliser un compilateur C différent de ceux listés par configure, alors positionnez la variable d'environnement CC pour qu'elle pointe sur le compilateur de votre choix. Par défaut, configure pointe sur gcc à moins qu'il ne soit celui de la plateforme. De façon similaire, vous pouvez repositionner les options par défaut du compilateur à l'aide de la variable CFLAGS.
Vous pouvez spécifier les variables d'environnement sur la ligne de commande configure, par exemple :
./configure CC=/opt/bin/gcc CFLAGS='-O2 -pipe'
Compilation
Pour démarrer la compilation, saisissez
gmake
(Rappelez-vous d'utiliser GNU make). La compilation peut prendre entre cinq minutes et une demi-heure en fonction de votre matériel. La dernière ligne affichée devrait être
All of PostgreSQL is successfully made. Ready to install.
Tests de régression
Si vous souhaitez tester le serveur nouvellement compileé avant de l'installer, vous pouvez exécuter les tests de régression à ce moment. Les tests de régression sont une suite de tests qui vérifient que PostgreSQL fonctionne sur votre machine tel que les développeurs l'espèrent. Saisissez
gmake check
(Cela ne fonctionne pas en tant que root ; faites-le en tant qu'utilisateur sans droits.) Le Chapitre 26 contient des détails sur l'interprétation des résultats de ces tests. Vous pouvez les répéter autant de fois que vous le voulez en utilisant la même commande.
Installer les fichiers
Note : Si vous mettez à jour une version existante et que vous placez les fichiers au même endroit que les anciens, alors vous devrez sauvegarder vos données et arrêter l'ancien serveur, comme expliqué dans la Section 14.4 ci-après.
Pour installer PostgreSQL, saisissez
gmake install
Cela installera les fichiers dans les répertoires spécifiés dans l'étape 1. Assurez-vous d'avoir les droits appropriés pour écrire dans ces répertoires. Normalement, vous avez besoin d'être superutilisateur pour cette étape. Une alternative consiste à créer les répertoires cibles à l'avance et à leur donner les droits appropriées.
Vous pouvez utiliser gmake install-strip en lieu et place de gmake install pour dépouiller l'installation des exécutables et des bibliothèques. Cela économise un peu d'espace disque. Si vous avez effectué la compilation en mode de débogage, ce dépouillage l'enlèvera, donc ce n'est à faire seulement si ce mode n'est plus nécessaire. install-strip essaie d'être raisonnable en sauvegardant de l'espace disque mais il n'a pas une connaissance parfaite de la façon de dépouiller un exécutable de tous les octets inutiles. Ainsi, si vous voulez sauvegarder le maximum d'espace disque, vous devrez faire le travail à la main.
L'installation standard fournit seulement les fichiers en-têtes nécessaires pour le développement d'applications clientes. Si vous prévoyez de faire du développement côté serveur (comme des fonction personnelles ou des types de données écrits en C), alors vous pouvez vouloir installer toute l'arborescence des fichiers d'en-tête de PostgreSQL dans votre répertoire de fichiers d'en-tête d'arrivée. Pour cela, saisissez
gmake install-all-headers
Cela ajoute un ou deux mégaoctets à l'installation de base et est utile seulement si vous ne prévoyez pas de conserver toute l'arborescence source comme référence. (Si vous faites cela, vous pouvez n'utiliser que les fichiers en-têtes du répertoire source pour compiler les applicatifs côté serveur.)
Installation du client uniquement : Si vous ne voulez qu'installer les applications clientes et les bibliothèques d'interface, alors vous pouvez utilisez ces commandes :
gmake -C src/bin install gmake -C src/include install gmake -C src/interfaces install gmake -C doc install
Désinstallation : Pour désinstaller, utilisez la commandegmake uninstall. Cependant, cela ne supprimera pas les répertoires créés.
Ménage : Après l'installation, vous pouvez faire le ménage en supprimant les fichiers issus de la compilation des répertoires sources à l'aide de la commande gmake clean. Cela conservera les fichiers créés par la commande configure, ainsi vous pourrez tout recompiler ultérieurement avec gmake. Pour remettre l'arborescence source dans l'état initial, utilisez gmake distclean. Si vous voulez effectuer la compilation pour diverses plateformes à partir des mêmes sources vous devrez d'abord refaire la configuration à chaque fois.
Si vous avez compilé et que vous vous êtes rendu compte que les options de configure sont fausses, ou si vous changez quoique ce soit que configure prenne en compte (par exemple, la mise à jour d'applications), alors c'est une bonne idée de faire un gmake distclean avant de reconfigurer et recompiler. Sans ça vos changement dans les choix de configuration ne seront pas répercutés partout où il faut.
Précédent | Sommaire | Suivant |
Si vous effectuez une mise à jour | Niveau supérieur | Initialisation Post-Installation |