首先确认已经安装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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 1
2#!/usr/bin/python
3# -*- coding: utf-8 -*-
4
5from traceback import print_exc
6from pyhive import hive
7
8
9conn = None
10cursor = None
11try:
12 conn = hive.Connection(host='172.11.11.11',port=10000,database='yang',)
13 cursor = conn.cursor()
14 cursor.execute('show tables')
15 for result in cursor.fetchall():
16 print(result)
17 cursor.close()
18 conn.close()
19except Exception, err:
20 print '===================error msg print=========================='
21 print_exc()
22 print '------------------------------------------------------------'
23 print err
24 if cursor:
25 cursor.close()
26 if conn:
27 conn.close()
28
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