如何解决Presto Jdbc 连接给出错误执行查询
我们正在尝试执行 presto jdbc connection 。 我们遵循了
中的简单示例https://www.tutorialspoint.com/apache_presto/apache_presto_jdbc_interface.htm
- 添加了 jar ,
- 在 eclipse 中作为 java 应用程序运行。
注意:
- Presto 安装在 linux 服务器中。 presto cli 在 linux 中运行良好。在 linux 中开始 presto。
- 我们在 Windows 机器 eclipse ide 中运行这个类。 我们在 linux 机器中没有防火墙。
- 在linux机器上也安装了Mysql。我们可以使用java代码在windows中访问mysql。但无法从 Windows 执行此操作。
还尝试添加 ssl =true 如下所示 connection = DriverManager.getConnection("jdbc:presto://19.255.24.127:8080/mysql/tutorials?user=root&password=Redcar88!&SSL=true");
异常: java.sql.SQLException:执行查询时出错 在 com.facebook.presto.jdbc.PrestoStatement.internalExecute(PrestoStatement.java:279) 在 com.facebook.presto.jdbc.PrestoStatement.execute(PrestoStatement.java:228) 在 com.facebook.presto.jdbc.PrestoStatement.executeQuery(PrestoStatement.java:77) 在 testdbPresto.PrestoJdbcSample.main(PrestoJdbcSample.java:22) 引起:java.io.UncheckedIOException: javax.net.ssl.SSLException: Unsupported or unrecognized SSL message 在 com.facebook.presto.jdbc.internal.client.JsonResponse.execute(JsonResponse.java:154) 在 com.facebook.presto.jdbc.internal.client.StatementClientV1.(StatementClientV1.java:130) 在 com.facebook.presto.jdbc.internal.client.StatementClientFactory.newStatementClient(StatementClientFactory.java:24) 在 com.facebook.presto.jdbc.QueryExecutor.startQuery(QueryExecutor.java:46) 在 com.facebook.presto.jdbc.PrestoConnection.startQuery(PrestoConnection.java:717) 在 com.facebook.presto.jdbc.PrestoStatement.internalExecute(PrestoStatement.java:240) ... 3个 引起:javax.net.ssl.SSLException:不支持或无法识别的 SSL 消息 在 sun.security.ssl.SSLSocketInputRecord.handleUnknownRecord(SSLSocketInputRecord.java:448) 在 sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:174) 在 sun.security.ssl.SSLTransport.decode(SSLTransport.java:110) 在 sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1279) 在 sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1188) 在 sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:401) 在 sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:373) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:299) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:268) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.RealConnection.connect(RealConnection.java:160) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:256) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:134) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:113) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:125) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121) 在 com.facebook.presto.jdbc.internal.client.OkHttpUtil.lambda$basicAuth$1(OkHttpUtil.java:91) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121) 在 com.facebook.presto.jdbc.internal.client.OkHttpUtil.lambda$userAgent$0(OkHttpUtil.java:77) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147) 在 com.facebook.presto.jdbc.internal.okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121) 在 com.facebook.presto.jdbc.internal.okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200) 在 com.facebook.presto.jdbc.internal.okhttp3.RealCall.execute(RealCall.java:77) 在 com.facebook.presto.jdbc.internal.client.JsonResponse.execute(JsonResponse.java:131) ……还有8个
presto 安装的 config.properties 。 在代码中,我使用机器的 ip 作为主机。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。