ipcclean
ipcclean — Supprimer la mémoire partagée et les sémaphores
d'un serveur PostgreSQL™
victime d'un arrêt brutal
Description
ipcclean
supprime
tous les segments de mémoire partagée et les ensembles de
sémaphores détenus par l'utilisateur courant. Cette commande permet
de nettoyer le système après l'arrêt brutal d'un serveur
PostgreSQL™ (
postgres
(1)).
Comme le redémarrage immédiat du serveur nettoie également la
mémoire partagée et les sémaphores, cette commande n'a réellement
que peu d'utilité.
Seul l'administrateur de base de données peut exécuter ce
programme. En effet, s'il est lancé en exécution multi-utilisateur,
il peut être la cause d'un comportement bizarre du serveur (des
plantages brutaux, par exemple). S'il est exécuté alors que le
serveur est en cours d'exécution, la mémoire partagée et les
sémaphores alloués par ce serveur sont supprimés, ce qui peut
engendrer de graves conséquences pour le serveur.
Notes
Ce script est une astuce assez sale mais, depuis qu'il a été écrit
(il y a bien longtemps), personne n'a proposé une solution aussi
efficace et portable. Comme, dorénavant, le
postgres
effectue lui-même ce
nettoyage, il est peu probable que
ipcclean
soit amélioré dans le
futur.
Le script fait des suppositions sur le format de sortie de l'outil
ipcs
. Suppositions
qui peuvent s'avérer erronées en fonction du système
d'exploitation. Il est, de ce fait, possible qu'il ne fonctionne
pas sur un système particulier. Il est toujours conseillé de lire
le script avant de l'essayer.