dropuser — remove uma conta de usuário do PostgreSQL
dropuser [opção_de_conexão...] [opção...] [nome_do_usuário]
O utilitário dropuser remove um usuário
existente do PostgreSQL.
Os superusuários podem usar este comando para remover qualquer
função de banco de dados (role);
caso contrário, somente funções de banco de dados que não sejam de
superusuário podem ser removidas, e somente por um usuário que
possua o privilégio CREATEROLE e que tenha
recebido ADMIN OPTION
na função de banco de dados de destino.
O utilitário dropuser é um invólucro em torno do comando DROP ROLE do SQL. Não há diferença efetiva entre remover usuários por meio desse utilitário, ou por meio de outros métodos de acesso ao servidor.
O utilitário dropuser aceita os seguintes argumentos de linha de comando:
nome_do_usuário
Especifica o nome do usuário do
PostgreSQL a ser removido.
Será solicitado o nome do usuário, se não tiver sido fornecido
algum na linha de comando, e for usada a opção
-i/--interactive.
-e--echoMostra os comandos que o dropuser gera e envia para o servidor.
-i--interactiveSolicita a confirmação antes de realmente remover o usuário, e solicita o nome do usuário, se não tiver sido fornecido algum na linha de comando.
-V--versionMostra a versão do dropuser, e termina.
--if-existsNão será relatado erro se o usuário não existir. É emitido um aviso neste caso.
-?--helpMostra a ajuda sobre os argumentos da linha de comando de dropuser, e termina.
O utilitário dropuser também aceita os seguintes argumentos de linha de comando para parâmetros de conexão:
-h hospedeiro--host=hospedeiroEspecifica o nome de hospedeiro da máquina na qual o servidor está sendo executado. Se começar com uma barra, será usado como o diretório para o soquete de domínio Unix.
-p porta--port=portaEspecifica a porta TCP, ou a extensão de arquivo de soquete de domínio Unix local, na qual o servidor está aguardando conexões.
-U nome_do_usuário--username=nome_do_usuárioNome do usuário para se conectar como (e não o nome do usuário a ser removido).
-w--no-password
Nunca emite uma solicitação de senha.
Se o servidor exigir autenticação por senha, e uma senha não
estiver disponível por outros meios, como o arquivo
.pgpass, a tentativa de conexão irá falhar.
Esta opção pode ser útil em tarefas em lote e scripts nos quais
nenhum usuário está presente para inserir uma senha.
-W--passwordForça o dropuser solicitar uma senha (para se conectar ao servidor, e não a senha para o novo usuário).
Esta opção nunca é essencial, porque o
dropuser solicita automaticamente
a senha se o servidor exigir autenticação por senha.
No entanto, o dropuser irá desperdiçar
uma tentativa de conexão ao descobrir que o servidor pede uma senha.
Em alguns casos vale a pena digitar -W para
evitar a tentativa extra de conexão.
PGHOSTPGPORTPGUSERParâmetros de conexão padrão
PG_COLOR
Especifica se devem ser usadas cores nas mensagens de diagnóstico.
Os valores possíveis são always,
auto e never.
Este utilitário, como a maioria dos outros utilitários do PostgreSQL, também usa as variáveis de ambiente com suporte pela libpq (veja Variáveis de ambiente).
Em caso de dificuldade, veja o comando DROP ROLE e o utilitário psql para discussões sobre possíveis problemas e mensagens de erro. O servidor de banco de dados deve estar em execução no hospedeiro de destino. Além disso, quaisquer configurações de conexão padrão e variáveis de ambiente usadas pela biblioteca cliente libpq serão aplicadas.
Para remover o usuário joe do servidor de banco
de dados padrão:
$ dropuser joe
Para remover o usuário joe usando o servidor no
hospedeiro eden, porta 5000, com verificação,
e vendo o comando subjacente:
$dropuser -p 5000 -h eden -i -e joeRole "joe" será permanentemente removida. Você tem certeza? (s/n)sDROP ROLE joe;
Exemplo 91. Exemplo do tradutor
Remoção de um usuário na máquina local
Remoção do usuário joe
através do usuário postgres
usando o servidor no hospedeiro localhost,
porta 5432, com verificação, e vendo o comando subjacente:
$dropuser -p 5432 -h localhost -i -e joeRole "joe" será permanentemente removida. Você tem certeza? (s/n)sSenha: SELECT pg_catalog.set_config('search_path', '', false); DROP ROLE joe;
Neste exemplo a senha fornecida foi a do usuário
postgres usado para remover o usuário
joe.