AVISO :
trust significa exatamente isso. Qualquer pessoa que possa se conectar ao servidor PostgreSQL pode controlá-lo. Se você definir trust modo que permite superusuários como o usuário postgres (ou all usuários) para se conectar, eles obtêm controle total do seu PostgreSQL e provavelmente também podem executar comandos shell. Normalmente, você deve usá-lo apenas para alterar a senha em seguida, restaure a configuração de volta ao modo de autenticação que você estava usando antes. Se você usou um script de instalação autônoma, a senha estará no script ou no arquivo de configuração associado.
Caso contrário, trate-a como se você tivesse perdido/esquecido a senha, em vez de nunca saber:
- Editar
pg_hba.conf, definindo o modo de autenticação paratrustem vez do padrãomd5 - No painel de controle de Serviços, reinicie o serviço PostgreSQL
- Conecte-se com
psqlou PgAdmin ou qualquer outro ALTER USER postgres PASSWORD 'mynewpassword';- Editar
pg_hba.confnovamente e defina o modo de autenticação de volta paramd5 - Reinicie o PostgreSQL novamente
pg_hba.conf está em seu diretório de dados. Por padrão, será %PROGRAMFILES%\PostgreSQL\9.3\data . Para editá-lo, você terá que usar a guia de segurança para obter permissões de leitura/gravação (por meio de um prompt do UAC). Isso pode exigir que você se defina como o proprietário do arquivo.
Em sistemas unix é mais seguro acrescentar um
local all all peer
linha para
pg_hba.conf e então sudo -u postgres psql (assumindo que seu servidor PostgreSQL roda como usuário postgres ) para obter um psql interativo sessão sem usar uma senha. Dessa forma, você não precisa usar trust .