在python中使用与Hive的连接导致JDBC错误

时间:2018-10-16 04:38:51

标签: python jdbc hive jaydebeapi

我是python的新手,所以请保持友善。我正在尝试使用JDBC从配置单元中获取数据。我完成了所需的所有安装。但是在运行此简单代码时,将返回错误。我在这里需要一些帮助,以了解问题所在以及如何通过shell修复该问题。

import jaydebeapi as jdba
def get_hive_jdbc_con():
    driver="org.apache.hive.jdbc.HiveDriver"
    conn_url="jdbc:hive2://tlgdhadlap12.r-office.com:10000/default"
    auth_lst=["un","pw"]
    conn = jdba.connect(driver,conn_url,auth_lst,"c:/app/hive-jdbc-1.2.1000.2.6.4.0-91-standalone.jar")
    return conn

get_hive_jdbc_con()

错误返回:

Traceback (most recent call last):

  File "C:/../PycharmProjects/untitled/venv/Scripts/GilaTest", line 10, in <module>

    get_hive_jdbc_con()

  File "C:/../PycharmProjects/untitled/venv/Scripts/GilaTest", line 7, in get_hive_jdbc_con

    conn = jdba.connect(driver,conn_url,auth_lst,"c:/app/hive-jdbc-1.2.1000.2.6.4.0-91-standalone.jar")

  File "C:\..\PycharmProjects\untitled\venv\lib\site-packages\jaydebeapi\__init__.py", line 68, in connect

    connection = gateway.jvm.DriverManager.getConnection(*driver_args)

  File "C:\..\PycharmProjects\untitled\venv\lib\site-packages\py4j\java_gateway.py", line 1160, in __call__

    answer, self.gateway_client, self.target_id, self.name)

  File "C:\..\PycharmProjects\untitled\venv\lib\site-packages\py4j\protocol.py", line 324, in get_return_value

    format(target_id, ".", name, value))

py4j.protocol.Py4JError: An error occurred while calling z:java.sql.DriverManager.getConnection. Trace:

py4j.Py4JException: Method getConnection([class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String, class java.lang.String]) does not exist

                at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:318)

                at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:339)

                at py4j.Gateway.invoke(Gateway.java:276)

                at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)

                at py4j.commands.CallCommand.execute(CallCommand.java:79)

                at py4j.GatewayConnection.run(GatewayConnection.java:214)

                at java.lang.Thread.run(Unknown Source)

感谢您的帮助! 吉拉

0 个答案:

没有答案