phoenix客户端连接hbase数据库报错:Traceback (most recent call last): File "bin/sqlline.py", line 27, in <module> import argparse ImportError: No module named argparse
环境描述:
- 操作系统版本:CentOS release 6.5 (Final)
- phoenix版本:phoenix-4.10.0
- hbase版本:hbase-1.2.6
现象描述:
通过phoenix客户端连接hbase数据库时,无法正常连接,报下面的信息:
[aiprd@host-10-191-5-227 phoenix-4.10.0]$ bin/sqlline.py 10.191.5.227
Traceback (most recent call last):
File "bin/sqlline.py", line 27, in <module>
import argparse
ImportError: No module named argparse
问题分析:
通过以上错误的提示,缺少python组件argparse。
问题解决:
安装python-argparse RPM包。
注:在通过yum install python-argparse进行软件包安装的时候,发现服务器既没有联网,也没有yum server,同时在服务器上也没有系统的ISO镜像。所以,考虑单独下载python-argparse RPM包,然后手动进行安装。
1.下载地址
http://rpmfind.net/linux/RPM/index.html
2.搜索RPM包
3.根据操作系统版本,选择相应的软件包
4.下载完软件包之后,上传到服务器中,通过rpm –ivh命令进行安装
[root@host-10-191-5-227 tmp]# rpm -ivh python-argparse-1.2.1-2.1.el6.noarch.rpm
Preparing... ########################################### [100%]
1:python-argparse ########################################### [100%]
注:安装rpm软件包要通过root用户来完成安装。
5.python-argparse软件包安装完成之后,重新通过phoenix客户端连接hbase
[aiprd@host-10-191-5-227 phoenix-4.10.0]$ bin/sqlline.py host-10-191-5-226
Setting property: [incremental, false]
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect jdbc:phoenix:host-10-191-5-226 none none org.apache.phoenix.jdbc.PhoenixDriver
Connecting to jdbc:phoenix:host-10-191-5-226
18/03/06 09:40:00 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Connected to: Phoenix (version 4.10)
Driver: PhoenixEmbeddedDriver (version 4.10)
Autocommit status: true
Transaction isolation: TRANSACTION_READ_COMMITTED
Building list of tables and columns for tab-completion (set fastconnect to true to skip)...
711/711 (100%) Done
Done
sqlline version 1.2.0
0: jdbc:phoenix:host-10-191-5-226> #出现此提示符表示已经成功的连接到了hbase数据库.
0: jdbc:phoenix:host-10-191-5-226> !quit
Closing: org.apache.phoenix.jdbc.PhoenixConnection
备注:通过phoenix客户端可以正常的连接到hbase。
以上问题解决。
小结:
以上问题的出现的主要原因,就是在phoenix客户端运行的时候,需要python的argparse组件来支持,通过安装argparse组件之后,就可以正常的使用phoenix客户端了。
附件:
python-argparse RPM软件包下载地址(个人网盘):
https://pan.baidu.com/s/16OG0k6vE9MU7fpdUUTcfzw 密码: 97e8
文档创建时间:2018年3月6日09:57:24