首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Simba][ImpalaJDBCDriver](500151)在Imapala jdbc连接中设置/关闭会话时出错

Simba][ImpalaJDBCDriver](500151)在Imapala jdbc连接中设置/关闭会话时出错
EN

Stack Overflow用户
提问于 2016-04-20 18:56:21
回答 2查看 8.8K关注 0票数 3

我正在尝试使用JDBC连接连接到impala。使用的Imapala驱动程序jar是impalaJDBC41。创建连接对象'con‘时出错,错误是在Imapala jdbc连接中设置/关闭会话时出现-SimbaImpalaJDBCDriver错误

代码如下:

代码语言:javascript
运行
复制
import java.sql.Connection;    
import java.sql.DriverManager;

import java.sql.SQLException;
import java.sql.Statement;

public class JDBC_Connection1 {
    private static String driverName = "com.cloudera.impala.jdbc41.Driver";
    public static void main(String[] args) throws SQLException {
    try {
       Class.forName(driverName);

        } 
   catch (ClassNotFoundException e)
       {
            // TODO Auto-generated catch block
            e.printStackTrace();
            System.exit(1);
        }
         Connection con =   DriverManager.getConnection("jdbc:impala://host:25004/;principal=impala/host@abc.ENTERPRISENET.ORG");
         Statement stmt = con.createStatement();
         String tableName = "yogesh";
         stmt.executeQuery("drop table " + tableName);
    }

}
EN

回答 2

Stack Overflow用户

发布于 2017-11-01 12:58:06

网址应为: jdbc:impala://192.168.8.183:21050;AuthMech=1;KrbRealm=abc.ENTERPRISENET.ORG;KrbHostFQDN=your-host;KrbServiceName=impala

kerberos需要hadoop kerberos环境

代码语言:javascript
运行
复制
System.setProperty("sun.security.krb5.debug", "false");
System.setProperty("java.security.krb5.conf",loader.getResource("secret/krb5.ini").getPath());
org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration();
conf.set("hadoop.security.authentication", "Kerberos");
UserGroupInformation.setConfiguration(conf);
UserGroupInformation.loginUserFromKeytab("hdfs/admin@HADOOP.COM", loader.getResource("secret/184_hdfs.keytab").getPath());
        UserGroupInformation loginUser = UserGroupInformation.getLoginUser();
        loginUser.doAs(new PrivilegedAction<Void>() {
            @Override
            public Void run() {
                connectImpala();
                return null;
            }
        });
}
票数 0
EN

Stack Overflow用户

发布于 2017-12-06 03:52:14

我在Cloudera JDBC driver for Hive中遇到了同样的错误(代码500151),并且能够通过将;SocketTimeout=0添加到我的连接字符串来解决这个问题。

请务必阅读文档,以确保您没有忘记一些属性:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36741638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档