Installation du serveur PostgreSQL/PostGIS

Fondamental

  • Le paramétrage du serveur PostgreSQL est enregistré dans le fichier de configuration postgresql.conf

  • Seul l'administrateur du serveur peut changer les paramètres du serveur et modifier le fichier postgresql.conf

  • Le serveur PostgreSQL doit être relancé pour appliquer les modifications de configuration

nb : pour le MTES se reporter aux conseils pour le déploiement de l'offre Eole PostgreSQL

1 - Choisir un port différent de celui par défaut (5432)

Cette mesure de sécurité basique est surtout conseillée dans le cadre d'une ouverture vers le web.

Méthode

Dans le fichier de configuration postgresql.conf, changer la valeur port=5432

2 - Créer un tablespace sur une autre partition que la partition système

Le tablespace est un espace de stockage qui va permettre de stocker les données d'une base de données (tables, index, tables systèmes...).

En le définissant sur une autre partition que la partition système, vous évitez d'encombrer celle-ci en l'attribuant aux nouvelles bases de données.

Attention : le modifier à posteriori pour une base ne sera pris en compte que pour les nouveaux éléments (tables, index...) de la base.

Pour changer le tablespace sur ceux-ci, il vous faut modifier le tablespace de chacun des éléments (table, index).

Exemple : Créer un tablespace sur une autre partition que la partition système :

  • Sous LINUX : CREATE TABLESPACE espace_rapide LOCATION '/mnt/sda1/postgresql/data';

  • Sous WINDOWS : CREATE TABLESPACE espace_rapide LOCATION 'E:/sda1/postgresql/data';

Remarque :

On peut aussi modifier le paramètre default_tablespace dans le fichier postgresql.conf

 Ex : default_tablespace = '/mnt/sda1/postgresql/data'

3 - Mettre toutes les données dans un ou plusieurs autre(s) schéma(s) que le schéma par défaut "public"

Cette action très importante est à mettre en œuvre dès la phase de conception de la base de données

Elle permet de :

  • Séparer le coeur de PostGIS (tables systèmes PostGIS, fonctions...) des données elles-mêmes

  • Organiser les données par la création de schémas par thématique métier , ou selon d'autres organisations (référentiel, données tabulaires/vectorielles etc)

  • Simplifier potentiellement la gestion des droits d'utilisation par cette organisation en schémas multiples

Le principal avantage reste néanmoins de faciliter la mise à jour de PostGIS ainsi que la restauration et l'échange plus efficaces de données.

L'import d'une sauvegarde contenant les fonctionnalités PostGIS dans une autre installation peut en effet causer des conflits.

4 - Bien vérifier les "ouvertures" vers l'extérieur

En effet, il est important de limiter l'accès à PostgreSQL au strict nécessaire.

Paramètre

Fichier de configuration

Commentaires

listen_addresses

postgresql.conf

Permet de définir quelles IP sont "écoutées" par PostgreSQL

(toutes, localhost). Par défaut : '*' (le serveur écoute tout)

listen_addresses

pg_hba.conf

Permet de gérer plus finement les accès en configurant les IP ou plages d'IPs autorisées en précisant les bases autorisées et les modes d'accès (sans mot de passe, mot de passe cryptés...).

Le chapitre suivant est consacré à l'optimisation des performances du serveur PostgreSQL pour l'exploitation des données spatiales.