【问题标题】:Not able to Connect with phpmyadmin on ip address say "67.3.234.45" with hibernate无法在 IP 地址上与 phpmyadmin 连接说“67.3.234.45”与休眠
【发布时间】:2015-09-15 15:32:36
【问题描述】:

我创建了一个拥有所有权限的用户。选择主机时有点困惑(当前为本地主机),

休眠设置是。

jdbc.driverClassName    = com.mysql.jdbc.Driver
jdbc.url                = jdbc:mysql://67.3.234.45:3306/user
jdbc.username           = username
jdbc.password           = password
hibernate.dialect       = org.hibernate.dialect.MySQLDialect
hibernate.show_sql      = true
hibernate.hbm2ddl.auto  = update

例外是:更新了完全例外的问题..

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at     sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:389)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1038)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:338)
at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2237)
at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2270)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2069)
at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:389)
at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:399)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:325)
at java.sql.DriverManager.getConnection(DriverManager.java:571)
at java.sql.DriverManager.getConnection(DriverManager.java:187)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:153)
at org.springframework.jdbc.datasource.DriverManagerDataSource.getConnectionFromDriver(DriverManagerDataSource.java:144)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnectionFromDriver(AbstractDriverBasedDataSource.java:155)
at org.springframework.jdbc.datasource.AbstractDriverBasedDataSource.getConnection(AbstractDriverBasedDataSource.java:120)
at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:139)
at org.hibernate.tool.hbm2ddl.SuppliedConnectionProviderConnectionHelper.prepare(SuppliedConnectionProviderConnectionHelper.java:51)
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:219)
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:203)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:522)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1859)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1930)

【问题讨论】:

  • phpmyadmin 有什么用?
  • 请提供完整的调用堆栈,以及所有“引起”的部分
  • phpmyadmin 已安装在服务器上。我的本地数据库工作正常(不是 phpmyadmin)但无法连接到服务器上的 sql。
  • 将消息粘贴到 Google,com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure。你可能会得到一些提示。由于某些未知原因,该数据库似乎无法访问。
  • phpmyadmin 和 java 程序不在同一台机器上。什么变化以及我必须做些什么才能使连接正常工作。就像启用 phpmyadmin 以接受来自其他机器的连接。我正在阅读其他相关问题,但仍然无法弄清楚。

标签: java mysql hibernate phpmyadmin


【解决方案1】:

首先:phpmyadmin 是一个管理数据库的工具。这似乎与问题完全无关。 (虽然它可能对调试有用)

为了调试此问题,请仔细检查以下内容是否正确:

  • 主持人
  • 端口
  • 数据库名称
  • 用户名
  • 密码

仔细检查您是否可以实际访问服务器,例如通过 ping 它,或使用 telnet 连接到主机/端口。

如果这一切都没有帮助,请在 Util.java 第 389 行或 try 块中设置断点,然后再查看实际发生的情况和失败的情况。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    • 2016-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-06
    相关资源
    最近更新 更多