Documentation PostgreSQL 14.22 » Référence » Applications client de PostgreSQL » dropuser

Précédent | Niveau supérieur | Suivant
dropdb | Sommaire | ecpg

## dropuser

dropuser — Supprimer un compte utilisateur PostgreSQL

## Synopsis

`dropuser` [`option_connexion`...] [`option`...] [`nomutilisateur`]

## Description

dropuser supprime un utilisateur. Seuls les super-utilisateurs et les utilisateurs disposant du droit `CREATEROLE` peuvent supprimer des utilisateurs (seul un super-utilisateur peut supprimer un super-utilisateur).

dropuser est un enrobage de la commande SQL `DROP ROLE`. Il n'y a pas de différence réelle entre la suppression des utilisateurs à l'aide de cet outil ou à l'aide d'autres méthodes d'accès au serveur.

## Options

dropuser accepte les arguments suivants en ligne de commande :

`nomutilisateur`

  Le nom de l'utilisateur PostgreSQL à supprimer. Un nom est demandé s'il n'est pas fourni sur la ligne de commande et que l'option `-i` / `--interactive` est utilisé.

`-e`
`--echo`

  Les commandes engendrées et envoyées au serveur par dropuser sont affichées.

`-i`
`--interactive`

  Une confirmation est demandée avant la suppression effective de l'utilisateur. La commande demande aussi le nom de l'utilisateur si aucun nom n'a été fourni sur la ligne de commande.

`-V`
`--version`

  Affiche la version de dropuser puis quitte.

`--if-exists`

  Ne renvoie pas d'erreur si l'utilisateur n'existe pas. Un message d'avertissement est envoyé dans ce cas.

`-?`
`--help`

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

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

`-h `hôte``
`--host=`hôte``

  Le nom d'hôte de la machine sur lequel le serveur fonctionne. Si la valeur commence par une barre oblique (/ ou slash), elle est utilisée comme répertoire du socket de domaine Unix.

`-p `port``
`--port=`port``

  Le port TCP ou l'extension du fichier du socket local de domaine Unix sur lequel le serveur attend les connexions.

`-U `nomutilisateur``
`--username=`nomutilisateur``

  Le nom de l'utilisateur utilisé 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 dropuser à demander un mot de passe avant la connexion à une base de données.

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

## Environnement

`PGDATABASE`
`PGHOST`
`PGPORT`
`PGUSER`

  Paramètres de connexion par défaut.

`PG_COLOR`

  Indique s'il faut utiliser la couleur dans les messages de diagnostic. Les valeurs possibles sont `always`, `auto`, `never`.

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

## Diagnostics

En cas de difficultés, il peut être utile de consulter DROP ROLE et psql, 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.

## Exemples

Supprimer l'utilisateur `joe` de la base de données par défaut :

    $ dropuser joe

Supprimer l'utilisateur `joe` sur le serveur hébergé sur l'hôte `eden`, qui écoute sur le port 5000, avec demande de confirmation et affichage de la commande sous-jacente :

    $ dropuser -p 5000 -h eden -i -e joe
    Role "joe" will be permanently removed.
    Are you sure? (y/n) y
    DROP ROLE joe;

## Voir aussi

createuser, DROP ROLE