Table des matières
,

Installer PostgreSQL

Comme le dit le slogan, PostgreSQL est “The world's most advanced open source database”.
On va donc un peu décrypter l'installation et la gestion de ce SGBD1) de professionnel.
Cette page ne pourra, bien sûr, jamais remplacer la doc officielle qui est bien complète.

Cette documentation est en cours de rédaction

Avant propos

Debian a cette particularité de permettre aux administrateurs d'installer plusieurs versions de PgSQL côte-à-côte et de les administrer via un ensemble de scripts perl maison. Cela peut-être très utile dans le cadre d'une migration ou pour les développeurs testant leurs codes sur différentes versions.

Pour ce faire, au sein d'un même serveur, chaque cluster porte un nom unique pour une version donnée de PgSQL. Par exemple, si vous installez consécutivement les versions 8.1 et 8.3, votre serveur aura alors un premier cluster en 8.1 nommé main1 accessible via le port 5432 et un second en 8.2, lui aussi nommé main2, via 5433.

Nous verrons dans le chapitre Gestion au quotidien comment fonctionnent ces scripts spécifiques de Debian et comment les utiliser.

Installation

Au moment de la rédaction de cette documentation, Debian propose les versions 7.4 en stable et 8.3 en testing/unstable.

3 types de paquets sont intéressant à connaître. Ici nous utiliseront X.Y pour désigner la version de PgSQL concernée par le paquet :

Ainsi pour installer un serveur 8.3 avec ses clients, nous exécuterons :

# aptitude install postgresql-8.3 postgresql-client-8.3

Configuration

Emplacement des fichiers

Les fichiers de configurations de chaque serveurs se situent dans ''/etc/postgresql/X.Y/<cluster> où X.Y désigne la version de PostgreSQL et <cluster> le nom du cluster concerné par les fichiers de configurations.

Chaque cluster aura donc ses propres fichiers de configuration :

Serveur

Authentification des clients

Gestion au quotidien

Maintenance

Utilisateurs et Roles

postgres=# ALTER ROLE name WITH PASSWORD 'newpass';

Backup et Restauration

1) Système de Gestion de Base de Données