繁体   English   中英

此JAVA MySQL JDBC Google App Engine连接字符串有效吗?

[英]Is this JAVA MySQL JDBC Google App Engine connection string valid?

请告诉我此方法内的连接字符串是否为有效的连接字符串:

Connection conn = DriverManager.getConnection(
                  "jdbc:google:mysql://cloud-2280:mysql/account"
                  , "root"
                  , "");
  • appID:cloud-2280
  • instanceID:mysql
  • 数据库名称:帐户
  • 密码:mypassword

这是例外:

com.conversedynamics.NewServlet doPost:空com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接失败最近一次成功发送到服务器的数据包是0毫秒前。 驱动程序尚未收到来自服务器的任何数据包。 在java.lang.java处sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)处com.mysql.jdbc.Util.handleNewInstance(Util.java:411)处的.newInstance(Constructor.java:46)com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1117)处的com.mysql.jdbc处的。 com.mysql.jdbc上的MysqlIO.readPacket(MysqlIO.java:668)com.mysql.jdbc上的MysqlIO.doHandshake(MysqlIO.java:1078)com.mysql.jdbc上的com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2417) com.mysql.jdbc上的.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2450)。com.mysql.jdbc上com.mysql.jdbc.ConnectionImpl。(ConnectionImpl.java:818)上的ConnectionImpl.createNewIO(ConnectionImpl.java:2235) su上的.JDBC4Connection。(JDBC4Connection.java:46)在sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法) n.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)位于com.mysql处java.lang.reflect.Constructor.newInstance(Constructor.java:46)处的sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:404)处com.mysql.jdbc.Util.handleNewInstance(Util.java:411)com.mysql.jdbc.GoogleNonRegisteringDriver $ JdbcWrapper.getInstance(GoogleNonRegisteringDriver.java:282) com.conversedynamics上java.sql.DriverManager.getConnection(DriverManager.java:571)上的com.mysql.jdbc.GoogleNonRegisteringDriver.connect(GoogleNonRegisteringDriver.java:252) org.mortbay上的javax.servlet.http.HttpServlet.service(HttpServlet.java:637)上的.NewServlet.doPost(NewServlet.java:90)在org.mortbay上的javax.servlet.http.HttpServlet.service(HttpServlet.java:717)上。 org.mortbay.jetty.serv上的jetty.servlet.ServletHolder.handle(ServletHolder.java:511) 在org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter()上的org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)上的let.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1166) org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)的org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter(ServletHandler.java:1157)的ServletHandler.java:1157) org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)上的org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler上的.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) .java:182)位于org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765),位于org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418),位于org.mortbay.jetty。 org.mortbay.jetty.Server.handle(Server.java:326)上的handler.HandlerWrapper.handle(HandlerWrapper.java:152)org.mortbay.jetty.HttpConnection.handleRequest(HttpConnecti) 于org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete(HttpConnection.java:923)于org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)于com.google.tracing.TraceContext com.google.tracing.TraceContext $ TraceContextRunnable $ 1.run(TraceContext.java:444)com.google.tracing.CurrentContext.runInContext(CurrentContext.java:256)处的$ TraceContextRunnable.runInContext(TraceContext.java:437) com.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:300)上com.google.tracing.TraceContext $ TraceContext $ TraceContextRunnable.run(TraceContext)上的.google.tracing.TraceContext $ AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:308) .java:441)at java.lang.Thread.run(Thread.java:745)原因:java.io.EOFException:无法读取来自服务器的响应。 预期读取4个字节,在意外丢失连接之前读取0个字节。 在com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3039)在com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:592)

文档所述 ,您的jdbc网址看起来有效。

好看。

您曾经能够克服这个困难吗? 每当我看到它时,它通常与客户端和mySQL服务器之间的安全配置有关。

“通信链接失败最后一次成功发送到服务器的数据包是在0毫秒之前。驱动程序尚未从服务器收到任何数据包。”

尝试在网址中附加“?verifyServerCertificate = false; useSSL = false”。 服务器可能期望比您在连接字符串中指定的安全性更高的安全性。 这些命令将覆盖这些命令,从而使连接的安全性降低。 但是,如果您建立联系,就会知道需要集中精力在哪里。 当然,您不希望在禁用安全性的情况下运行。 但这是一种了解问题所在的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM