【问题标题】:Mysql Instance in google cloud - Communications link failure谷歌云中的Mysql实例 - 通信链接失败
【发布时间】:2020-07-30 10:15:44
【问题描述】:

我在连接到谷歌云中的 MySql 实例时遇到以下错误。

通过私有 IP 连接到数据库。

相同的设置在普通的共存服务器上运行。

我可以使用 mysql 客户端通过私有 IP 连接到数据库。

正在部署的应用程序是基于 Spring 的应用程序。

2020-07-30 09:31:03,369 WARN [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (JCA PoolFiller) IJ000610:无法填充池:java:jboss/datasources/ACADEMY: javax.resource.ResourceException:IJ031084:无法创建连接 在 org.jboss.ironjacamar.jdbcadapters@1.4.22.Final//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:345) 在 org.jboss.ironjacamar.jdbcadapters@1.4.22.Final//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:352) 在 org.jboss.ironjacamar.jdbcadapters@1.4.22.Final//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:287) 在 org.jboss.ironjacamar.impl@1.4.22.Final//org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.createConnectionEventListener(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:1322) 在 org.jboss.ironjacamar.impl@1.4.22.Final//org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.fillTo(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:1142) 在 org.jboss.ironjacamar.impl@1.4.22.Final//org.jboss.jca.core.connectionmanager.pool.mcp.PoolFiller.run(PoolFiller.java:97) 在 java.base/java.lang.Thread.run(Thread.java:844) 原因:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure

最后一个成功发送到服务器的数据包是 0 毫秒前。驱动程序没有收到来自服务器的任何数据包。 在 com.mysql@8.0.20//com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174) 在 com.mysql@8.0.20//com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64) 在 com.mysql@8.0.20//com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:836) 在 com.mysql@8.0.20//com.mysql.cj.jdbc.ConnectionImpl.(ConnectionImpl.java:456) 在 com.mysql@8.0.20//com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:246) 在 com.mysql@8.0.20//com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:197) 在 org.jboss.ironjacamar.jdbcadapters@1.4.22.Final//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:321) ... 6 更多 引起:com.mysql.cj.exceptions.CJCommunicationsException:通信链路故障

【问题讨论】:

    标签: mysql spring-mvc google-cloud-sql


    【解决方案1】:

    您需要使用JDBC socket factory。您还需要在项目中启用 Cloud SQL Admin API,并在使用套接字工厂之前安装/验证 Cloud SDK。按照上面链接中的说明将库添加为依赖项并创建 JDBC URL

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-21
      • 2021-01-12
      • 2020-06-11
      • 2015-01-27
      • 2020-04-02
      • 2017-09-07
      • 2014-06-09
      • 2016-09-25
      相关资源
      最近更新 更多