I'm setting up my PostgreSQL 9.1. I can't do anything with PostgreSQL: can't createdb
, can't createuser
; all operations return the error message
Fatal: role h9uest does not exist
h9uest
is my account name, and I sudo apt-get install
PostgreSQL 9.1 under this account.
Similar error persists for the root
account.
Use the operating system user
postgres
to create your database - as long as you haven't set up a database role with the necessary privileges that corresponds to your operating system user of the same name (h9uest
in your case):As recommended here or here.
Then try again. Type
exit
when done with operating as system userpostgres
.Or execute the single command
createuser
aspostgres
withsudo
, like demonstrated by drees in another answer.The point is to use the operating system user matching the database role of the same name to be granted access via
ident
authentication.postgres
is the default operating system user to have initialized the database cluster. The manual:I have heard of odd setups with non-standard user names or where the operating system user does not exist. You'd need to adapt your strategy there.
Read about database roles and client authentication in the manual.
Manually creating a DB cluster solved it in my case.
For some reason, when I installed postgres, the "initial DB" wasn't created. Executing
initdb
did the trick for me.This solution is provided in the PostgreSQL Wiki - First steps:
Working method,
vi /etc/postgresql/9.3/main/pg_hba.conf
local all postgres peer
here change peer to trustrestart,
sudo service postgresql restart
now try,
psql -U postgres
Uninstalling everything and keeping Postgres.app:
I wanted PostgreSQL 9.6
Follow These Steps and it Will Work For You :
msfconsole
db_connect user:pass@host:port.../database
sorry I don't remember it but it's like this one then replace the user and the password and the host and the database with the information included in thedatabase.yml
in the emplacement:/usr/share/metasploit-framework/config
msfconsole: msf>db_status
you will see that it's connected.