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

Version anglaise

reindexdb

reindexdb — reindexe une base de données PostgreSQL

Synopsis

reindexdb [option-connexion...] [ --table | -t table] [ --index | -i index] [nombase]

reindexdb [option-connexion...] --all | -a

reindexdb [option-connexion...] --system | -s [nombase]

Description

reindexdb permet de reconstruire les index d'une base de données PostgreSQL™.

reindexdb est un enrobage de la commande REINDEX(7). Il n'y a pas de différence entre la réindexation des bases de données par cette méthode et par celles utilisant d'autres méthodes d'accès au serveur.

Options

reindexdb accepte les arguments suivants en ligne de commande :

-a, --all

Réindexe toutes les bases de données.

[-d] base, [--dbname=]base

Spécifie le nom de la base à réindexer. Si cette option n'est pas présente et que l'option -a (ou --all) n'est pas utilisée, le nom de la base est lu à partir de la variable d'environnement PGDATABASE. Si elle n'est pas configurée, le nom de l'utilisateur pour la connexion est utilié.

-e, --echo

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

-i index, --index=index

Ne recrée que l'index index.

-q, --quiet

N'affiche pas la progression.

-s, --system

Réindexe les catalogues système de la base de données.

-t table, --table=table

Ne réindexe que la table table.

-V, --version

Affiche la version de reindexdb, puis quitte.

-?, --help

Affiche l'aide sur les arguments en ligne de commande de reindexdb, puis quitte.

reindexdb accepte aussi les arguments suivants en ligne de commande pour les paramètres de connexion :

-h hôte, --host=hôte

Précise le nom d'hôte de la machine hébergeant le serveur. Si cette valeur débute par une barre oblique ('/' ou slash), elle est utilisée comme répertoire de socket UNIX.

-p port, --port=port

Précise le port TCP ou le fichier de socket UNIX d'écoute.

-U nom_utilisateur, --username=nom_utilisateur

Nom de l'utilisateur à utiliser pour la connexion.

-w, --no-password

Ne demande jamais un mot de passe. Si le serveur en réclame un pour l'authentification et qu'un mot de passe n'est pas disponible d'une autre façon (par exemple avec le fichier .pgpass), la tentative de connexion échouera. Cette option peut être utile pour les scripts où aucun utilisateur n'est présent pour saisir un mot de passe.

-W, --password

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

Cette option n'est jamais obligatoire car reindexdb demandera automatiquement un mot de passe si le serveur exige une authentification par mot de passe. Néanmoins, reindexdb 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.

--maintenance-db=nom-base-maintenance

Spécifie le nom de la base de données à laquelle se connecter pour trouver les bases qui vont être réindexées. Si elle n'est pas spécifiée, la base de donnée postgres est utilisée ; si elle n'existe pas, la base template1 est utilisée.

Environnement

PGDATABASE, PGHOST, PGPORT, PGUSER

Paramètres par défaut pour la connexion

Cet outil, comme la plupart des autres outils PostgreSQL™, utilise aussi les variables d'environnement supportées par la bibliothèque libpq (voir Section 31.14, « Variables d'environnement »).

Diagnostiques

En cas de difficultés, il peut être utile de consulter REINDEX(7) 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.

Notes

reindexdb 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 31.15, « Fichier de mots de passe » pour plus d'informations.

Exemples

Pour réindexer la base de données test :

$ reindexdb test

Pour réindexer la table foo et l'index bar dans une base de données nommée abcd :

$ reindexdb --table foo --index bar abcd

Voir aussi

REINDEX(7)