首先确认已经安装gcc以及确认系统的版本例如测试环境是Centos6.5
1.通过下面这个网站下载需要的python扩展模块
https://pypi.org/project/PyHive/

2.通过这个网站下载需要的rpm包
http://www.rpmfind.net/linux/rpm2html/search.php

3.安装依赖的rpm包
忽略依赖强制安装rpm包,如果警告或者报错安装不上
rpm -ivh cyrus-sasl-devel-2.1.23-15.el6_6.2.x86_64.rpm --force --nodeps
一般直接安装就好
rpm -ivh cyrus-sasl-2.1.23-15.el6_6.2.x86_64.rpm
4.解压python扩展模块包sasl-0.2.1.tar.gz
tar -zxvf sasl-0.2.1.tar.gz
等等四个模块
如下:
PyHive-0.6.1
PyHive-0.6.1.tar.gz
sasl-0.2.1
sasl-0.2.1.tar.gz
thrift-0.11.0
thrift-0.11.0.tar.gz
thrift_sasl-0.3.0
thrift_sasl-0.3.0.tar.gz
5.安装python扩展模块
例如进入sasl-0.2.1

安装
python setup.py install

没有异常,出现上图内容表示安装成功
6.写测试脚本test_conn_hive.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
from traceback import print_exc
from pyhive import hive
conn = None
cursor = None
try:
conn = hive.Connection(host='172.11.11.11',port=10000,database='yang',)
cursor = conn.cursor()
cursor.execute('show tables')
for result in cursor.fetchall():
print(result)
cursor.close()
conn.close()
except Exception, err:
print '===================error msg print=========================='
print_exc()
print '------------------------------------------------------------'
print err
if cursor:
cursor.close()
if conn:
conn.close()
7.启动脚本
先启动hiveserver2服务
(1)进入cdh-hive的bin目录/opt/cloudera/parcels/CDH-5.9.1-1.cdh5.9.1.p0.4/lib/hive/bin
(2)命令 ./hiveserver2启动服务
/opt/cloudera/parcels/CDH-5.9.1-1.cdh5.9.1.p0.4/lib/hive/bin

(3)启动脚本
python test_conn_hive.py
本文介绍如何在CentOS 6.5环境下安装PyHive及其依赖,并提供了一个简单的Python脚本来验证连接HiveServer2的功能。
3948

被折叠的 条评论
为什么被折叠?



