Java 无法从运行在google cloud的tomcat实例上的servlet连接lamp实例的数据库

Java 无法从运行在google cloud的tomcat实例上的servlet连接lamp实例的数据库,java,mysql,tomcat,lamp,google-cloud-platform,Java,Mysql,Tomcat,Lamp,Google Cloud Platform,我有两个在谷歌云上运行的项目实例,Tomcat实例和Lamp实例 我的servlet运行在tomcat实例上,必须连接到lamp实例的数据库 我给出了以下连接的详细信息 String DriverName="com.mysql.jdbc.Driver"; String userName="root"; String password="root"; String driverManager="jdbc:mysql://localhost:3306/databasename"; localhos

我有两个在谷歌云上运行的项目实例,Tomcat实例和Lamp实例

我的servlet运行在tomcat实例上,必须连接到lamp实例的数据库

我给出了以下连接的详细信息

String DriverName="com.mysql.jdbc.Driver";
String userName="root";
String password="root";
String driverManager="jdbc:mysql://localhost:3306/databasename";
localhost请求将发送到tomcat实例的mysql(此处tomcat实例也包含mysql),而不会发送到lamp实例

所以我想要一种向另一个实例发送请求的方法

如果我放置lamp实例url,则表示我在logcat中收到以下异常

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链路故障

有谁能告诉我如何解决这个问题吗


提前感谢。

您需要通过将
连接器/J
设置为true来启用它,还需要使用
google
mysql
驱动程序,而不是通用的
com.mysql.jdbc.driver

启用连接器/j

<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
  ...
  <use-google-connector-j>true</use-google-connector-j>
</appengine-web-app>

能否从本地计算机连接到lamp实例?有防火墙吗?是否有与之匹配的适当主机的用户?您正在收听网络还是公共IP?这个问题需要更多信息。创建lamp实例后,我得到了该实例的一个IP地址。我能够通过ssh连接。我同时允许http和https流量。对于防火墙,我们还需要做些什么吗???如果我将lamp实例的外部ip放在该db url中,这将导致通信链路故障。。我不明白这个问题..“有没有合适的主机来匹配它的用户.?”。您能详细说明一下吗?先生,我想连接lamp实例的mysql数据库,而不是云sql实例..:/
Class.forName("com.mysql.jdbc.GoogleDriver");