I recently installed the latest version of Ubuntu and I'm not used to it yet. I had several problems connecting PostgreSQL with pgadmin3.
I tried to follow several tutorials to create a localhost server which I can use in pgadmin3. I didn't really hit the mark and I think I made it worse by installing, uninstalling, installing, uninstalling, trying answers I found... At this point I'm not sure my PostgreSQL is clean. It could be possible that I have two PostgreSQL installed, once again, I'm not sure. I tried to uninstall it but I had an error which basically said PostgreSQL wasn't in sudo.
The thing is I now have this error running psql in the console:
$psql
psql: FATAL: role "user" does not exist
I can't find the pg_hba.conf
and at this point I'm too afraid to make things even worse by trying following any other posts.
How could I make this work?
As pointed out in the comments, your pg_hba.conf seems fine.
Usually, the database will run as the postgres user (check ps aux | grep postgres
to find out the username postgres is running under).
Log in as that user, for example sudo su - postgres
, then create a user matching your normal Ubuntu user account (createuser username
), and finally create a database with that same name and set the owner (-O
) to that database user, like this: createdb -O username username
).
That should make calling psql
work, and pgadmin - as long as you start it as your default user, username - should work as well.
Edit: By default, psql
will use your Linux username as default value for both the database-username and the database-name. You can override the username by using -U someotherusername
, and connect to a different database by adding that DB name to the command line, such as psql someotherdbname
. You might also find psql -l
useful for listing the existing databases.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With