vacuumdb

Nom

vacuumdb -- récupère l'espace inutilisé et, en option, analyse une base de données PostgreSQL

Synopsis

vacuumdb [option-de-connexion...] [--full | -f] [--verbose | -v] [--analyze | -z] [--table | -t table [( colonne [,...] )] ] [base-de-donnees]
vacuumdb [options-de-connexion...] [--all | -a] [--full | -f] [--verbose | -v] [--analyze | -z]

Description

vacuumdb est un outil pour nettoyer une base de données PostgreSQL. vacuumdb génère aussi des statistiques internes utilisées par l'optimiseur de requêtes de PostgreSQL.

vacuumdb est une surcouche de la commande VACUUM. Il n'y a pas de différence effective entre vacuumdb et les autres méthodes de vacuum.

Options

vacuumdb accepte les arguments suivants sur la ligne de commande :

-a
--all

Nettoie toutes les bases de données.

[-d] base-de-donnees
[--dbname] base-de-donnees

Indique le nom de la base de données à nettoyer ou à analyser. S'il n'est pas précisé et si -a (ou --all) n'est pas utilisé, le nom de la base de données est cherché dans la variable d'environnement PGDATABASE. Si cette variable d'environnement n'a pas de valeur, alors le nom d'utilisateur précisé pour la connexion est utilisé.

-e
--echo

Affiche les commandes que vacuumdb génère et envoie au serveur.

-f
--full

Exécute un nettoyage << complet >>.

-q
--quiet

N'affiche pas de réponse.

-t table [ (colonne [,...]) ]
--table table [ (colonne [,...]) ]

Ne nettoie ou n'analyse que la table table. Des noms de colonnes peuvent être précisés en conjonction avec l'option --analyze

Astuce : Si vous indiquez des colonnes, il vous faudra probablement mettre des caractères d'échappement avant les parenthèses. (Voir les exemples plus bas.)

-v
--verbose

Affiche des informations détaillées durant le traitement.

-z
--analyze

Calcule des statistiques à l'usage de l'optimiseur.

vacuumdb accepte aussi les arguments suivants comme paramètres de connexion :

-h hôte
--host hôte

Indique le nom d'hôte de la machine sur laquelle le serveur de bases de données est en cours d'exécution. Si la valeur commence par une barre oblique (/), elle est utilisée comme répertoire pour la socket de domaine Unix.

-p port
--port port

Indique le port TCP ou le fichier local de socket de domaine Unix sur lequel le serveur écoute pour la connexion.

-U utilisateur
--username utilisateur

Nom d'utilisateur à utiliser pour se connecter.

-W
--password

Force la demande d'un mot de passe.

Environnement

PGDATABASE
PGHOST
PGPORT
PGUSER

Paramètres de connexion par défaut.

Diagnostiques

En cas de difficulté, voir VACUUM et psql pour des discussions sur les problèmes potentiels et les messages d'erreur. Le serveur de base de données doit être en fonctionnement sur le serveur cible. De même, les éventuels paramètres de connexion et variables d'environnement utilisés par la bibliothèque cliente de libpq sont applicables.

Notes

vacuumdb peut avoir besoin de se connecter plusieurs fois au serveur PostgreSQL et demande un mot de passe à chaque fois. Dans ce cas, il est pratique d'avoir un fichier ~/.pgpass. Voir Section 27.12 pour avoir plus d'informations.

Exemples

Pour nettoyer la base de données test :

$ vacuumdb test

Pour nettoyer et analyser une base de données nommée grossebase :

$ vacuumdb --analyze grossebase

Pour nettoyer une seule table foo dans une base de données nommée xyzzy et analyser une seule colonne bar de la table :

$ vacuumdb --analyze --verbose --table 'foo(bar)' xyzzy

Voir aussi

VACUUM