Définition simple
PostgreSQL est le logiciel qui organise, conserve et interroge les données d’une application. Une base peut contenir des clients, des commandes ou des équipements, répartis dans des tables reliées entre elles. Le langage SQL permet de rechercher et de modifier ces informations. PostgreSQL se distingue ainsi d’un simple fichier partagé : le serveur contrôle aussi les accès simultanés et les règles de cohérence.
Définition technique
Le fonctionnement suit un modèle client-serveur. Une application ouvre une connexion, s’authentifie avec un rôle et envoie ses requêtes. Les contraintes et les transactions servent à préserver la cohérence des données. Le mécanisme MVCC gère plusieurs versions des lignes pour permettre des accès concurrents ; il ne supprime pas tous les verrous ni les conflits entre transactions.
Un index facilite certaines recherches, mais occupe de l’espace et ajoute du travail lors des écritures. Le port TCP habituel est 5432 ; il reste configurable. L’adresse d’écoute, les règles pg_hba.conf, les permissions et la configuration TLS déterminent quelles connexions sont réellement acceptées.
À quoi cela sert ?
PostgreSQL convient aux applications métier, sites web et services qui ont besoin de données structurées et de relations fiables. Choisir ce moteur implique aussi d’organiser la maintenance, la surveillance et les restaurations. Une réplication peut améliorer la disponibilité ou répartir certaines lectures, mais elle ne remplace pas une sauvegarde indépendante.
Exemple concret
Dans une gestion de commandes, l’application crée une commande et ses lignes dans une transaction. Si une étape échoue, l’ensemble peut être annulé au lieu de laisser une commande incomplète. Un compte applicatif limité aux opérations nécessaires évite d’utiliser le rôle d’administration pour les traitements courants.
Repères essentiels
| Élément | Rôle |
|---|---|
| Table | Stocke les lignes et les relations métier |
| Index | Accélère certains accès, avec un coût en écriture |
| Transaction | Regroupe des opérations cohérentes |
| Réplication | Copie les changements ; ne protège pas seule d’une suppression logique |
Problèmes fréquents
- Connexion refusée : distinguer résolution DNS, écoute réseau, pare-feu et rejet d’authentification dans les journaux.
- Requête lente : examiner son plan d’exécution, les volumes et les index avant d’ajouter des ressources.
- Connexions saturées ou attente de verrou : rechercher les sessions et transactions longues, puis leur origine applicative.
Bonnes pratiques et limites
La sauvegarde doit correspondre au besoin de restauration : export logique, sauvegarde physique et, si prévu, archivage des WAL pour une restauration à un instant donné. Validez la méthode par un test de restauration et surveillez l’espace disque, les erreurs, les connexions et les délais de réplication.