2012-08-02 17 views
157

Me gustaría administrar mi base de datos heroku con el cliente pgadmin. Por ahora, he estado haciendo esto con psql. Cuando utilizo datos de heroku pg:credentials para conectar de DB usando pgadmin, obtengo: Se ha producidoConéctese a una base de datos heroku con pgadmin

un error:

Error al conectar con el servidor: FATAL: permiso denegado a la base de datos de "postgres" DETALLE: El usuario no tiene privilegio CONNECT.

¿Alguna guía sobre cómo lograr la conexión?

+1

Gracias por hacer esta pregunta, yo no sabía que es posible –

Respuesta

284

Abra las "Propiedades" del servidor Heroku en pgAdminIII y cambie el valor "Maintenance DB" para que sea el nombre de la base de datos a la que desea conectarse.

pgAdmin III - New Server Registration

La configuración por defecto es adecuado para los administradores de bases et al que pueden conectarse a cualquier base de datos en el servidor, pero al parecer eso no es cierto en su caso.

+7

Como [se sugiere en otra respuesta] (http : //stackoverflow.com/a/11769894/26510), deberá habilitar SSL seleccionando "SSL | SSL | require" en el cuadro de diálogo de conexión, de lo contrario, no podrá conectarse. –

+1

Si está usando Postico, también funciona. –

+3

Para encontrar sus bases de datos Heroku: https://postgres.heroku.com/databases – whiteshooz

16

Requerimos SSL para conexiones fuera de heroku. Verifique si está forzando SSL en su cliente.

Editar:

atendió más a fondo aquí: https://dba.stackexchange.com/questions/21869/connecting-pgadmin3-to-postgres-on-heroku

Nosotros no permiten conexiones a la base de datos postgres, así que asegúrese de establecer Mantenimiento DB a su nombre de base de datos, y asegúrese de utilizar SSL.

Eso debería ser suficiente.

+0

¿Necesito algún tipo de archivos/teclas para forzar SSL? (Discúlpeme por la ignorancia) –

+0

típicamente las interfaces gráficas tienen una casilla de verificación SSL en alguna parte. No uso pgadmin, pero de acuerdo con los documentos [1] parece que hay una pestaña SSL en el cuadro de diálogo de configuración de conexión. [1] http://www.pgadmin.org/docs/dev/connect.html – hgmnz

+0

Cuando hice clic en la pestaña SSL, me pidió certificados y una clave, y no sabía los valores para ellos. Aunque, al configurar el nombre de la base de datos de mantenimiento en mi nombre heroku DB, pude conectar la configuración solo en la pestaña 'Propiedades', sin tener que especificar nada sobre SSL (esto se hace al parecer de manera automática) –

6

Cambie la base de datos de mantenimiento por el nombre de su base de datos, p. dva70000p0090. Esto debería funcionar.

+0

No se requiere SSL, solo lo hizo como dijo Ravi y funciona – Alain

81

Después de cambiar el nombre de la base de mantenimiento como sugiere araqnid's answer above, también debe agregar su base de datos al campo Restricciones de base porque sin esto verá miles de bases de datos y es posible que no encuentre la suya en la lista si la lista es demasiado larga

Más detalles aquí - How to hide databases that I am not allowed to access

+5

+1 y al agregar el db nombre, asegúrese de citarlo en comillas simples, ya que se utilizará para generar dinámicamente una cláusula 'IN' para filtrar la lista db. – Glenn

Cuestiones relacionadas