Janvier 27, 2026Guides
Comment installer PostgreSQL sur un serveur Linux
Guide complet sur l'installation, la configuration et la sécurisation du serveur de base de données PostgreSQL sur Ubuntu et CentOS.

PostgreSQL est un système de gestion de base de données relationnelle puissant et open source, reconnu pour sa fiabilité, sa richesse en fonctionnalités et sa conformité aux standards. Ce guide vous aidera à installer et configurer PostgreSQL sur votre serveur Linux Hiddence.
Installation de PostgreSQL sur Ubuntu/Debian
PostgreSQL est disponible dans les dépôts par défaut. Installez la dernière version :
bash
sudo apt update
sudo apt install postgresql postgresql-contrib -y
# Démarrer et activer PostgreSQL
sudo systemctl start postgresql
sudo systemctl enable postgresql
# Vérifier l'installation
sudo systemctl status postgresql
psql --versionInstallation de PostgreSQL sur RHEL / CentOS / AlmaLinux / Rocky Linux
Pour les distributions basées sur RHEL, vous devez d'abord ajouter le dépôt PostgreSQL :
bash
# Installer le dépôt PostgreSQL
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Pour CentOS 8/Rocky Linux 8, utilisez :
# sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Installer PostgreSQL
sudo dnf install -y postgresql15-server postgresql15
# Initialiser la base de données
sudo /usr/pgsql-15/bin/postgresql-15-setup initdb
# Démarrer et activer PostgreSQL
sudo systemctl start postgresql-15
sudo systemctl enable postgresql-15
# Vérifier l'installation
sudo systemctl status postgresql-15
psql --versionVérification de l'installation
bash
# Vérifier le statut de PostgreSQL
sudo systemctl status postgresql
# Vérifier la version de PostgreSQL
psql --version
# Se connecter à PostgreSQL (Ubuntu/Debian)
sudo -u postgres psql
# Se connecter à PostgreSQL (CentOS/RHEL)
sudo -u postgres psql -d postgresSécurisation de PostgreSQL
Définir un mot de passe pour l'utilisateur postgres :
bash
# Se connecter à PostgreSQL
sudo -u postgres psql
# Définir le mot de passe pour l'utilisateur postgres
ALTER USER postgres PASSWORD 'votre_mot_de_passe_fort';
# Quitter PostgreSQL
\qCréation d'une base de données et d'un utilisateur
bash
# Se connecter en tant qu'utilisateur postgres
sudo -u postgres psql
# Créer une base de données
CREATE DATABASE myapp_db;
# Créer un utilisateur
CREATE USER app_user WITH PASSWORD 'mot_de_passe_fort';
# Accorder des privilèges
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO app_user;
# Quitter
\qGestion des utilisateurs
bash
# Se connecter à PostgreSQL
sudo -u postgres psql
# Lister tous les utilisateurs
\du
# Créer un nouvel utilisateur
CREATE USER newuser WITH PASSWORD 'mot_de_passe';
# Accorder des privilèges
GRANT ALL PRIVILEGES ON DATABASE myapp_db TO newuser;
# Révoquer des privilèges
REVOKE ALL PRIVILEGES ON DATABASE myapp_db FROM newuser;
# Supprimer un utilisateur
DROP USER newuser;Activation des connexions distantes
Pour autoriser les connexions distantes, modifiez les fichiers de configuration PostgreSQL :
bash
# Modifier pg_hba.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/pg_hba.conf
# Modifier pg_hba.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/pg_hba.conf
# Ajouter la ligne :
host all all 0.0.0.0/0 md5
# Modifier postgresql.conf (Ubuntu/Debian)
sudo nano /etc/postgresql/15/main/postgresql.conf
# Modifier postgresql.conf (CentOS/RHEL)
sudo nano /var/lib/pgsql/15/data/postgresql.conf
# Changer :
listen_addresses = '*'
# Redémarrer PostgreSQL
sudo systemctl restart postgresqlCommandes PostgreSQL de base
bash
# Se connecter à la base de données
psql -U app_user -d myapp_db
# Lister les bases de données
\l
# Se connecter à une base de données
\c database_name
# Lister les tables
\dt
# Décrire une table
\d table_name
# Exécuter un fichier SQL
psql -U app_user -d myapp_db -f script.sql
# Sauvegarder la base de données
pg_dump -U app_user myapp_db > backup.sql
# Restaurer la base de données
psql -U app_user -d myapp_db < backup.sqlConseils utiles
- Utilisez toujours des mots de passe forts pour les utilisateurs de la base de données
- Limitez l'accès distant à des adresses IP spécifiques dans pg_hba.conf
- Sauvegardez régulièrement vos bases de données en utilisant pg_dump
- Surveillez les journaux PostgreSQL : /var/log/postgresql/ (Ubuntu) ou /var/lib/pgsql/15/data/log/ (CentOS)
- Utilisez le regroupement de connexions (pgBouncer) pour les applications à fort trafic
- Maintenez PostgreSQL à jour avec la dernière version stable pour les correctifs de sécurité