Une question qui se pose souvent après l’installation d’une instance postgreSQL, c’est comment configurer ce fichier postgresql.conf. Dans le doute souvent, beaucoup de personnes conservent la configuration par défaut, ce qui ne va pas poser vraiment de problème pour une utilisation légère. Mais si on a une instance postgreSQL avec postGIS et des millions d’enregistrements, cela va rapidement se trouver problématique si on laisse les valeurs par défaut…

Pour les initiés qui installent régulièrement de nouvelles instances postgreSQL, se plonger dans les plus de 600 lignes du fichier de configuration par défaut ne les effraie pas. Mais on n’installe pas forcément tous les jours un nouveau serveur avec des caractéristiques différentes. Il faut donc soit se replonger pour une centième fois dans la documentation de postgres pour se rappeler à notre bonne mémoire les différents paramètres et les valeurs à adapter en fonction de la ram, disque, cpu…

En plus de devoir se rappeler les paramètres à modifier, il faut aussi connaître les règles de calcul pour les valeurs comme par exemple le « effective_cache_size » qui est préconisé à 75% de la ram total du serveur si celui-ci est dédié à postgres.

Le but de cet article n’est pas de voir ni de détailler tous les paramètres de configuration possibles et inimaginables, mais de voir cela comme un mémo pour les initiés ou de s’interroger sur les paramètres qui seraient potentiellement à modifier en fonction du serveur (et des applications qui l’utilisent) si l’on ne connait pas l’utilisation des paramètres de ce fichier postgresql.conf.

Pour cela un petit outil a été conçu par Cybertec, qui permet de renseigner quelques caractéristiques et de voir évoluer en conséquence le fichier postgresql.conf notamment en fonction de la ram du serveur, du nombre de cpu, de la taille de la base… etc.

Cela ne remplace pas une connaissance aguerrie de postgreSQL et de sa configuration mais ça permet de se faire une idée des paramètres à adapter en fonction de son serveur et de ses besoins.

Cet outil est disponible en ligne à cette adresse : http://pgconfigurator.cybertec.at/