J'exécute une base de données Heroku Postgres (base de données ) en association avec une application Django. Les documents qui font référence au module complémentaire sont ici . Je pensais que ce serait une question intéressante pour la communauté, car Heroku a averti ses utilisateurs aujourd'hui qu'il migrerait tout du module complémentaire de base de données partagée qui était par défaut.
J'ai du mal à connecter pgAdmin3 à la base de données.
Selon les instructions du lien ci-dessus, j'attrape les informations d'identification de la base de données avec la commande suivante:
$ heroku pg:credentials HEROKU_POSTGRESQL_OLIVE
J'utilise une installation homebrew de Postgresql sur Mac OSX.
En attendant, j'ai:
- SSL activé dans mon pg_postgresql.conf;
- ajouté le paramètre:
listen_addresses = '*'
- et ajouté
host all all 0.0.0.0/0 md5
- et redémarré mon serveur postgres.
Ensuite, je vais à pgAdmin3 et sélectionnez File > Add Server
.
J'entre les informations d'identification fournies par Heroku comme suit (le premier est le nom des informations d'identification Heroku, le second est le nom du champ pgAdmin):
Dans l'onglet "Propriétés":
- dbname dans Name;
- hôte en hôte;
- port dans le port;
- Je laisse le champ pgAdmin pour "Maintenance Database" vide;
- l'utilisateur en nom d'utilisateur;
- mot de passe dans Password;
Dans l'onglet SSL:
- Im le champ pour SSL, je sélectionne "exiger" (comme indiqué par Heroku).
J'appuie sur Entrée, et pgAdmin réfléchit, puis lance une erreur comme suit:
An error has occurred:
Error connecting to the server: FATAL: permission denied for database "postgres"
DETAIL: User does not have CONNECT privilege.
Je ne sais pas quoi faire à ce stade. J'apprécierais tous les conseils.
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’
- et c'est à cela que pgAdmin a essayé de se connecter. Fournissez le mot de passe de l'postgres
utilisateur.