sql >> Base de Datos >  >> RDS >> PostgreSQL

Conexión a la instancia local de PostgreSql con JDBC

Además de otras respuestas, tenga en cuenta que, de forma predeterminada, Postgres está configurado para aceptar conexiones a través de sockets Unix con autenticación basada en la cuenta de su sistema operativo, por eso psql funciona bien y no requiere la contraseña.

Las conexiones JDBC se realizan sobre TCP/IP con autenticación de contraseña, por lo que debe modificar pg_hba.conf respectivamente. Por ejemplo, esta línea permite conexiones TCP/IP desde la misma máquina a todas las bases de datos para todos los usuarios con autenticación de contraseña:

host    all         all         127.0.0.1/32          md5

Después de agregar esta línea jdbc:postgresql:databasename debería funcionar.

EDITAR: No puede crear una conexión JDBC sobre un socket Unix ya que el controlador JDBC de PostgreSQL solo puede funcionar sobre TCP/IP. La contraseña que utiliza al crear la conexión JDBC es la contraseña asignada a su usuario. Si no lo tiene, puede asignarlo, por ejemplo, usando ALTER USER dominio. Consulte 19.3. Métodos de autenticación .

Ver también: