java - using hibernate: psql: could not connect to server: Connection refused -
for problem found question [postgresql : connection refused. check hostname , port correct , postmaster accepting tcp/ip connections didn't me much. tried suggested.
i use
- a vm ubuntu 12.04 lts server
- postgresql 9.3
- client win7
- eclipse keppler
i used mysql testing purpose , works fine (so connection vm etc possible)
my log:
jul 07, 2015 12:49:35 pm org.hibernate.annotations.common.reflection.java.javareflectionmanager <clinit> info: hcann000001: hibernate commons annotations {4.0.5.final} jul 07, 2015 12:49:35 pm org.hibernate.version logversion info: hhh000412: hibernate core {4.3.10.final} jul 07, 2015 12:49:35 pm org.hibernate.cfg.environment <clinit> info: hhh000206: hibernate.properties not found jul 07, 2015 12:49:35 pm org.hibernate.cfg.environment buildbytecodeprovider info: hhh000021: bytecode provider name : javassist jul 07, 2015 12:49:35 pm org.hibernate.cfg.configuration configure info: hhh000043: configuring resource: de/motza/init/hibernatepsql.cfg.xml jul 07, 2015 12:49:35 pm org.hibernate.cfg.configuration getconfigurationinputstream info: hhh000040: configuration resource: de/motza/init/hibernatepsql.cfg.xml jul 07, 2015 12:49:35 pm org.hibernate.internal.util.xml.dtdentityresolver resolveentity warn: hhh000223: recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. use namespace http://www.hibernate.org/dtd/ instead. refer hibernate 3.6 migration guide! jul 07, 2015 12:49:35 pm org.hibernate.cfg.configuration doconfigure info: hhh000041: configured sessionfactory: null jul 07, 2015 12:49:35 pm org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl configure warn: hhh000402: using hibernate built-in connection pool (not production use!) jul 07, 2015 12:49:35 pm org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl buildcreator info: hhh000401: using driver [org.postgresql.driver] @ url [jdbc:postgresql://10.158.251.251:5432/history_log] jul 07, 2015 12:49:35 pm org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl buildcreator info: hhh000046: connection properties: {user=postgres, password=****} jul 07, 2015 12:49:35 pm org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl buildcreator info: hhh000006: autocommit mode: false jul 07, 2015 12:49:35 pm org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl configure info: hhh000115: hibernate connection pool size: 1 (min=1) my error:
initial sessionfactory creation failed. org.hibernate.exception.jdbcconnectionexception: error calling driver#connect @ org.hibernate.exception.internal.sqlstateconversiondelegate.convert(sqlstateconversiondelegate.java:132) @ org.hibernate.engine.jdbc.connections.internal.basicconnectioncreator$1$1.convert(basicconnectioncreator.java:118) @ org.hibernate.engine.jdbc.connections.internal.basicconnectioncreator.convertsqlexception(basicconnectioncreator.java:140) @ org.hibernate.engine.jdbc.connections.internal.driverconnectioncreator.makeconnection(driverconnectioncreator.java:58) @ org.hibernate.engine.jdbc.connections.internal.basicconnectioncreator.createconnection(basicconnectioncreator.java:75) @ org.hibernate.engine.jdbc.connections.internal.drivermanagerconnectionproviderimpl.configure(drivermanagerconnectionproviderimpl.java:106) @ org.hibernate.boot.registry.internal.standardserviceregistryimpl.configureservice(standardserviceregistryimpl.java:111) @ org.hibernate.service.internal.abstractserviceregistryimpl.initializeservice(abstractserviceregistryimpl.java:234) @ org.hibernate.service.internal.abstractserviceregistryimpl.getservice(abstractserviceregistryimpl.java:206) @ org.hibernate.engine.jdbc.internal.jdbcservicesimpl.buildjdbcconnectionaccess(jdbcservicesimpl.java:260) @ org.hibernate.engine.jdbc.internal.jdbcservicesimpl.configure(jdbcservicesimpl.java:94) @ org.hibernate.boot.registry.internal.standardserviceregistryimpl.configureservice(standardserviceregistryimpl.java:111) @ org.hibernate.service.internal.abstractserviceregistryimpl.initializeservice(abstractserviceregistryimpl.java:234) @ org.hibernate.service.internal.abstractserviceregistryimpl.getservice(abstractserviceregistryimpl.java:206) @ org.hibernate.cfg.configuration.buildtyperegistrations(configuration.java:1887) @ org.hibernate.cfg.configuration.buildsessionfactory(configuration.java:1845) @ de.motza.init.hibernateutil.getsessionfactorypsql(hibernateutil.java:35) @ de.motza.test.history_log.testpsql(history_log.java:124) @ de.motza.test.history_log.main(history_log.java:99) caused by: org.postgresql.util.psqlexception: connection 10.158.251.251:5432 refused. check hostname , port correct , postmaster accepting tcp/ip connections. @ org.postgresql.core.v3.connectionfactoryimpl.openconnectionimpl(connectionfactoryimpl.java:239) @ org.postgresql.core.connectionfactory.openconnection(connectionfactory.java:66) @ org.postgresql.jdbc2.abstractjdbc2connection.<init>(abstractjdbc2connection.java:127) @ org.postgresql.jdbc3.abstractjdbc3connection.<init>(abstractjdbc3connection.java:29) @ org.postgresql.jdbc3g.abstractjdbc3gconnection.<init>(abstractjdbc3gconnection.java:21) @ org.postgresql.jdbc4.abstractjdbc4connection.<init>(abstractjdbc4connection.java:41) @ org.postgresql.jdbc4.jdbc4connection.<init>(jdbc4connection.java:24) @ org.postgresql.driver.makeconnection(driver.java:414) @ org.postgresql.driver.connect(driver.java:282) @ org.hibernate.engine.jdbc.connections.internal.driverconnectioncreator.makeconnection(driverconnectioncreator.java:55) ... 15 more caused by: java.net.connectexception: connection refused: connect @ java.net.dualstackplainsocketimpl.connect0(native method) @ java.net.dualstackplainsocketimpl.socketconnect(unknown source) @ java.net.abstractplainsocketimpl.doconnect(unknown source) @ java.net.abstractplainsocketimpl.connecttoaddress(unknown source) @ java.net.abstractplainsocketimpl.connect(unknown source) @ java.net.plainsocketimpl.connect(unknown source) @ java.net.sockssocketimpl.connect(unknown source) @ java.net.socket.connect(unknown source) @ org.postgresql.core.pgstream.<init>(pgstream.java:61) @ org.postgresql.core.v3.connectionfactoryimpl.openconnectionimpl(connectionfactoryimpl.java:121) ... 24 more my hibernate config
<hibernate-configuration> <session-factory> <!-- database connection settings --> <property name="connection.driver_class">org.postgresql.driver</property> <property name="connection.url">jdbc:postgresql://10.158.251.251:5432/history_log</property> <property name="connection.username">postgres</property> <property name="connection.password">postgres</property> <!-- jdbc connection pool (use built-in) --> <property name="connection.pool_size">1</property> <!-- sql dialect --> <property name="dialect">org.hibernate.dialect.postgresqldialect</property> <!-- disable second-level cache --> <property name="cache.provider_class">org.hibernate.cache.nocacheprovider</property> <!-- echo executed sql stdout --> <property name="show_sql">true</property> <!-- create -> drop existing tables , create new 1 --> <!-- create-drop -> drop existing tables , create new one, when sessionfactory closes, table dropped --> <!-- update -> updates table values, saves data (not in production) --> <!-- validate -> validate existing table , not update or change database, throws exception --> <!-- production leave method out --> <property name="hbm2ddl.auto">create</property> <!-- mention here model classes along package name --> <mapping class="de.motza.test.logentry"/> <mapping class="de.motza.test.parameter"/> </session-factory> </hibernate-configuration> my java code creating session factory:
if (sessionfactorypsql == null || sessionfactorypsql.isclosed()) { configuration conf = new configuration().configure("de/motza/init/hibernatepsql.cfg.xml"); serviceregistry = new standardserviceregistrybuilder().applysettings(conf.getproperties()).build(); try { sessionfactorypsql = conf.buildsessionfactory(serviceregistry); } catch (exception e) { system.err.println("initial sessionfactory creation failed."); e.printstacktrace(); system.exit(0); } } return sessionfactorypsql; i used sudo netstat -taupen | grep postgres
tcp 0 0 127.0.0.1:5432 0.0.0.0:* listen 105 13970 3013/postgres tcp6 0 0 ::1:5432 :::* listen 105 13969 3013/postgres udp6 0 0 ::1:37902 ::1:37902 established 105 13981 3013/postgres my pg_hba.conf looks this:
# database administrative login unix domain socket local postgres peer # type database user address method # "local" unix domain socket connections local peer # ipv4 local connections: host 127.0.0.1/32 md5 host 0.0.0.0/0 md5 # ipv6 local connections: host ::1/128 md5 host 0.0.0.0/0 md5 # allow replication connections localhost, user # replication privilege. #local replication postgres peer #host replication postgres 127.0.0.1/32 md5 #host replication postgres ::1/128 md5 i tried different port still same error.
it part of bachelor thesis , not know anymore... hope can me
postgres listening on 127.0.0.1:5432, you're trying connect 10.158.251.251:5432. if ip addresses resolved same machine, won't equal in eyes of postmaster (the first local connection, second isn't).
add other ip pg_hba.conf well.
Comments
Post a Comment