Tuve el mismo problema con mi sitio y lo que fue más frustrante es que funcionó en el sitio implementado, pero cuando intentaba ejecutar el sitio localmente (usando capataz) recibí este error. Del error entendí que no puedo conectarme a la base de datos y de una verificación adicional, estas son las dos razones que causaron este error:
-
Ninguna variable de entorno DATABASE_URL
Por alguna razón no tenía el process.env.DATABASE_URL configurado en mi archivo .env aunque se configuró correctamente en el sitio remoto. Para resolver este problema, puede ejecutar "heroku config" y copiar la DATABASE_URL requerida en su archivo .env local (si este archivo no existe, cree uno).
NOTA importante: Cuando copie y pegue las variables, cambie el carácter ":" a "=". -
?ssl=true no es parte de DATABASE_URL
Gracias a la solución anterior, el cliente ahora sabe dónde conectarse, pero aún no pudo abrir la conexión debido a problemas de autenticación. Agregando ?ssl=true a DATABASE_URL finalmente resolvió el problema para mí. Parece que cuando intenta conectarse desde el sitio remoto (servidores Heroku) no necesita pasar el parámetro, pero cuando intenta conectarse a la base de datos desde su computadora local, necesita esta autenticación para hacer una conexión adecuada.
Espero que ayude.