Meu único usuário não tem permissão para fazer login no meu servidor postgresql, o que posso fazer?

1

Acho que, acidentalmente, mudei meu usuário para uma função sem login permitido. Agora, não consigo nem efetuar login para conceder privilégios de login à função. Existe algo que eu possa fazer?

Acho que havia apenas 1 usuário e não sei como listar todos os meus usuários se não conseguir fazer login primeiro.

Obrigado

Adendo

Eu reinstalei o postgres e parece que não existe nenhum usuário postgres. Eu instalei via brew:

    
por Lay González 08.07.2017 / 20:56

2 respostas

3

A conta de superusuário principal é configurada pelo initdb quando executada e assumirá como padrão o nome do usuário atual do sistema, não o postgres, a menos que um argumento -u / - username explícito seja fornecido. Da sua saída \du acima está claro que quando você configurou o servidor, você fez isso com o usuário do sistema laygr, já que esse usuário é a conta de superusuário principal do servidor de banco de dados.

Se você estragar seus privilégios de login ou esquecer sua senha, poderá voltar ao servidor se tiver acesso de gravação ao seu diretório de dados para poder editar o pg_hba.conf. Basta alterar o método auth na linha relevante para trust e recarregar a configuração do servidor via pg_ctl reload . Você pode, então, efetuar login, corrigir seu usuário / senha e, em seguida, reverter as alterações feitas em pg_hba.conf e recarregar a configuração novamente.

    
por 27.07.2017 / 20:25
0

Use o usuário padrão postgres para fazer login e reativar sua conta. Claro, você precisa saber a senha do usuário postgres ...

    
por 08.07.2017 / 21:59