createdb
é um comando que precisa se conectar ao servidor como qualquer outro comando do cliente (mesmo quando executado no próprio servidor) e, como tal, requer um usuário do banco de dados para se conectar.
Se você não especificar um usuário do banco de dados com a opção -U username
, ele precisará do nome de usuário do sistema operacional, portanto, a referência a "R-61"
na mensagem de erro. A senha solicitada é a senha de um usuário não existente do banco de dados R-61
.
Há também outras opções, como o host com o padrão localhost
e a porta com o valor padrão 5432
. Consulte o página de manual para todos eles.
Como você mencionou que conhece a senha de superusuário do postgres, a solução mais simples seria usar o usuário postgres
para iniciar o comando. Faz sentido de qualquer maneira, porque em uma instalação nova, esse usuário seria o único que tem permissão para criar um banco de dados.
Experimente createdb -U postgres newdatabase
Ele deve pedir uma senha e essa será a senha do usuário do banco de dados postgres
.
Se não pedir uma senha, significa que a política de segurança em pg_hba.conf
está configurada dessa maneira. Se a senha for perdida (ou nenhuma senha tiver sido definida, o que é o caso de algumas instalações automatizadas, especialmente no Unix), pg_hba.conf
precisa ser alterado e o serviço recarregado para autorizar conexões sem senha, pelo menos temporariamente para definir um nova senha.