Documentation PostgreSQL 8.2.23 > Référence > Applications client de PostgreSQL > vacuumdb | |
reindexdb | Applications relatives au serveur PostgreSQL |
vacuumdb — récupère l'espace inutilisé et, optionnellement, analyse une base de données PostgreSQL™
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]]
vacuumdb est un outil de nettoyage d'une base de données. vacuumdb peut également engendrer 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 aucune différence entre vacuumdb et les autres méthodes de vacuum.
vacuumdb accepte les arguments suivants sur la ligne de commande :
Nettoie toutes les bases de données.
Indique le nom de la base de données à nettoyer ou à analyser. Si aucun nom n'est pas précisé et si -a (ou --all) n'est pas utilisé, le nom de la base de données est récupéré dans la variable d'environnement PGDATABASE. Si cette variable n'est pas initialisée, c'est le nom d'utilisateur précisé pour la connexion qui est utilisé.
Affiche les commandes que vacuumdb engendre et envoie au serveur.
Exécute un nettoyage « complet ».
N'affiche pas de réponse.
Ne nettoie ou n'analyse que la table table. Des noms de colonnes peuvent être précisés en conjonction avec l'option --analyze
Lorsque des colonnes sont indiquées, il peut être nécessaire d'échapper les parenthèses. (Voir les exemples plus bas.)
Affiche des informations détaillées durant le traitement.
Calcule des statistiques à l'usage de l'optimiseur.
vacuumdb accepte aussi les arguments suivants comme paramètres de connexion :
Indique le nom d'hôte de la machine qui héberge le serveur de bases de données. Si la valeur commence par une barre oblique (/), elle est utilisée comme répertoire pour la socket de domaine Unix.
Indique le port TCP ou le fichier local de socket de domaine Unix sur lequel le serveur attend les connexions.
Nom d'utilisateur pour la connexion.
Force la demande d'un mot de passe.
Paramètres de connexion par défaut.
Cet outil, comme la plupart des autres outils PostgreSQL™, utilise aussi les variables d'environnement supportées par la bibliothèque libpq (voir Section 29.12, « Variables d'environnement »).
En cas de difficultés, il peut être utile de consulter VACUUM et psql(1), sections présentant les problèmes éventuels et les messages d'erreur.
Le serveur de base de données doit fonctionner sur le serveur cible. Les paramètres de connexion éventuels et les variables d'environnement utilisés par la bibliothèque cliente libpq s'appliquent.
vacuumdb peut avoir besoin de se connecter plusieurs fois au serveur PostgreSQL™. Afin d'éviter de saisir le mot de passe à chaque fois, on peut utiliser un fichier ~/.pgpass. Voir Section 29.13, « Fichier de mots de passe » pour plus d'informations.
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 la seule table foo dans une base de données nommée xyzzy et analyser la seule colonne bar de la table :
$ vacuumdb --analyze --verbose --table 'foo(bar)' xyzzy