I'm running a Heroku Postgres database (Database) in association with a Django app. The docs that refer to the add-on are here. I thought this would be a worthwhile question for the community because Heroku alerted its users today that it will be migrating everything off the shared database add-on that used to be default.
I'm having some trouble connecting pgAdmin3 to the Database.
As per the instructions in the link above, I grab the Database's credentials with the following command:
$ heroku pg:credentials HEROKU_POSTGRESQL_OLIVE
I'm using a homebrew installation of Postgresql on Mac OSX.
In the meantime, I have:
- switched SSL on in my pg_postgresql.conf;
- added the setting:
listen_addresses = '*'
- and added
host all all 0.0.0.0/0 md5
- and restarted my postgres server.
Then I go to pgAdmin3 and select File > Add Server
.
I enter the credentials provided by Heroku as follows (first is Heroku credential name, second is pgAdmin field name):
In the "Properties" Tab:
- dbname into Name;
- host into Host;
- port into Port;
- I leave the pgAdmin field for "Maintenance Database" blank;
- user into Username;
- password into Password;
In the SSL Tab:
- Im the field for SSL, I select "require" (as instructed by Heroku).
I hit enter, and pgAdmin thinks, then throws an error as follows:
An error has occurred:
Error connecting to the server: FATAL: permission denied for database "postgres"
DETAIL: User does not have CONNECT privilege.
Not sure what to do at this point. Would appreciate any pointers.
The maintenance DB field is used to specify the initial database that pgAdmin connects to, and that will be expected to have the pgAgent schema and adminpack objects installed (both optional). On PostgreSQL 8.1 and above, the maintenance DB is normally called ‘postgres’
- and that is which pgAdmin tried to connect to. Provide the password ofpostgres
user.