El controlador HikariCP Postgresql afirma que no acepta la URL de JDBC

3 minutos de lectura

avatar de usuario de user962206
usuario962206

Empujé mi aplicación a cloudfoundry. Sin embargo, cada vez que me conecto a mi postgresql/elephant sql recibí este error

 Driver org.postgresql.Driver claims to not accept JDBC URL jdbc:postgres://cwkqmdql:SsVqwdLxQObgaJAYu68O-8gTY1VmS9LX@pellefant.db.elephantsql.com:5432/cwkqmdql/

¿Hay algo que me haya perdido?

  • De hecho, la URL no es válida. si la parte cwkqmdql:SsVqwdLxQObgaJAYu68O-8gTY1VmS9LX se supone que es el nombre de usuario y la contraseña, entonces no puede especificarlo así. Consulte el manual para obtener la URL correcta: jdbc.postgresql.org/documentation/94/connect.html

    – un caballo sin nombre

    12 de enero de 2016 a las 11:26

  • @a_horse_with_no_name Traté de cambiar mi spring.datasource.url a este jdbc:postgres://pellefant-01.db.elephantsql.com:5432/cwkqmdql y el mismo error aún persiste

    – usuario962206

    12 de enero de 2016 a las 23:17


Hay algunos problemas con esa URL y es posible que un controlador PSQL más reciente se queje.

  1. jdbc:postgres: debe ser reemplazado con jdbc:postgresql:
  2. No utilice jdbc:postgresql://<username>:<passwor>...parámetros de usuario en su lugar: jdbc:postgresql://<host>:<port>/<dbname>?user=<username>&password=<password>
  3. En algunos casos, debe forzar la conexión SSL agregando sslmode=require parámetro

Entonces su URL debería ser:

jdbc:postgresql://@pellefant.db.elephantsql.com:5432/cwkqmdql?user=cwkqmdql&password=SsVqwdLxQObgaJAYu68O-8gTY1VmS9LX

o

jdbc:postgresql://@pellefant.db.elephantsql.com:5432/cwkqmdql?user=cwkqmdql&password=SsVqwdLxQObgaJAYu68O-8gTY1VmS9LX&sslmode=require

Espero que le ayudará.

  • En mi caso, necesitaba una barra inclinada hacia adelante. Me gusta jdbc:postgresql://db:5432/

    – David Groomes

    31 de enero de 2018 a las 3:32

  • no funcionó para mí con Spring Boot 2 en Heroku Postgres.

    – jonashackt

    23 de abril de 2018 a las 8:50

  • Gracias, fue causado por jdbc:postgre:/ Lo reemplacé por jdbc:postgresql:/ y está bien

    – Walterwhites

    16 de diciembre de 2018 a las 22:04


  • ¿Por qué @ se agrega junto con el nombre de host? En mi caso, funcionó cuando eliminé ‘@’ del nombre de host.

    – UVM

    20 de abril de 2019 a las 6:21

  • Esta respuesta realmente me ayudó a conectarme a Heroku Postgres desde una máquina local

    – Holger L.

    9 de febrero de 2021 a las 9:49

En mi caso estaba definiendo la propiedad entre comillas dobles en el archivo java.properties

cambiando

jdbcUrl="url"

a

jdbcUrl=url

funciona de nuevo

  • ooops, ese era mi problema, también. Gracias

    – robar

    13 de noviembre de 2018 a las 8:16

  • Este era el problema también. Para mi caso, la confusión proviene de una sintaxis diferente para diferentes archivos de configuración (application.properties vs application.yml)

    – Hoang Long

    14 de diciembre de 2018 a las 8:04

  • ¿Qué pasa si estoy usando el gráfico de timón para crear secretos y mientras creamos secretos necesitamos rodear cada valor con comillas? Luego, en aplicaciones.propiedades, inyectamos el env var.

    – Abdennour TOUMI

    21 de febrero de 2021 a las 11:19

  • Primero asegúrese de haber importado el controlador en pom.xml (en caso de que esté usando maven), luego proceda a leer las respuestas

    – prueba_22

    22 abr a las 17:59

El problema que tuve fue que había dado comillas dobles para la URL de la fuente de datos en el archivo de propiedades.

lo que yo había dado :

spring.datasource.url="jdbc:postgresql://localhost:5432/postgres"

La forma correcta de dar la url es :

spring.datasource.url=jdbc:postgresql://localhost:5432/postgres

también tuve este error, pero me di cuenta de que era porque había escrito
postgressql
en vez de
postgresql en mi url

Avatar de usuario de Salami Korede
salami korede

Estaba teniendo el mismo error hasta que me di cuenta de que no configuré mi perfil como activo en la clase application.properties.

spring.profiles.active = dev

Avatar de usuario de Tran Duong
Tran Duong

En mi caso, dos archivos de configuración están en diferente formato:

  1. application.properties en src/main/resources
  2. application.yml en src/test/resources

Después de cambiar application.yml a application.properties en src/test/resourcesel problema fue solucionado.

Avatar de usuario de Jafar Karuthedath
Jafar Karuthedath

Tuve el mismo problema con h2 DB en WebFlux. El problema era con spring.datasource.driver

No funciona

spring.datasource.driver=org.h2.Driver

Laboral

spring.datasource.driver-class-name=org.h2.Driver

¿Ha sido útil esta solución?