PostgreSQLLa base de données la plus sophistiquée au monde.

F.33. vacuumlo

vacuumlo est un outil simple qui supprimera tous les « Large Objects » « orphelins » d'une base de données PostgreSQL™. Un « Large Object » orphelin est tout « Large Object » dont l'OID n'apparaît dans aucune colonne oid ou lo de la base de données.

Si vous l'utilisez, vous pourriez être intéressé par le trigger lo_manage du module contrib contrib/lo (voir Section F.14, « lo »). lo_manage est utile pour tenter d'éviter la création de « Large Object » orphelins.

F.33.1. Usage

vacuumlo [options] base [base2 ... basen]
  

Toutes les bases de données indiquées sur la ligne de commande sont traitées. Les options disponibles sont :

-v

Écrit beaucoup de messages de progression.

-n

Ne supprime rien, affiche simplement ce qu'il aurait fait.

-U nom_utilisateur

Nom d'utilisateur pour la connexion.

-W

Force vacuumlo à demander un mot de passe avant la connexion à une base de données.

Cette option n'est jamais obligatoire car vacuumlo demandera automatiquement un mot de passe si le serveur exige une authentification par mot de passe. Néanmoins, vacuumlo perdra une tentative de connexion pour trouver que le serveur veut un mot de passe. Dans certains cas, il est préférable d'ajouter l'option -W pour éviter la tentative de connexion.

-h nom_hote

Serveur de la base de données.

-p port

Port du serveur de la base de données.

F.33.2. Méthode

Tout d'abord, ce module construit une table temporaire contenant tous les OID des « Large Objects » de cette base de donnée.

Ensuite, il parcourt toutes les colonnes de la base qui sont de type oid ou lo, et supprime les entrées correspondantes de la table temporaire.

Les entrées restantes de la table temporaire identifient les « Large Objects » orphelins. Ils sont supprimés.

F.33.3. Auteur

Peter Mount

http://www.retep.org.uk