【linux】安装impala的ODBC驱动
(2016-12-22 19:03:50)分类: 操作系统 |
整了一整天,发现原来是自己积累的linux知识实在是太少了,现在总结以下安装步骤:
isql -v impalaodbc
1、第一步下载和服务器版本一致的ODBC驱动
下载的是 :ClouderaImpalaODBC-2.5.26.1027-1.el6.x86_64.rpm
2、上传到服务器,并安装:
2.1)验证unixODBC是否安装
rpm -qa|grep unixODBC
如果没有安装执行以下命令:
yum install unixODBC
yum install unixODBC-devel
2.2)验证服务器上是否有以下包:
rpm -q cyrus-sasl-2.1.22-7 or later
rpm -q cyrus-sasl-gssapi-2.1.22-7
or later
rpm -q cyrus-sasl-plain-2.1.22-7
or later
如果没有会安装:
yum install cyrus-sasl-2.1.22-7 or later
yum
install cyrus-sasl-gssapi-2.1.22-7 or
later
yum
install cyrus-sasl-plain-2.1.22-7 or
later
2.3)安装驱动:
rpm -ivh ClouderaImpalaODBC-2.5.15.1015-1.el6.x86_64.rpm
显示以下内容及安装完成:
Preparing... ########################################### [100%]
1:ClouderaImpalaODBC ########################################### [100%]
2.4)配置ODBC连接方式
驱动会自动安装在/opt/cloudera/impalaodbc
这个路径下:
复制odbc.ini odbcinst.ini
到/etc/下
sudo
cp /opt/cloudera/impalaodbc/Setup/odbc.ini /etc/odbc.ini
sudo
cp /opt/cloudera/impalaodbc/Setup/odbcinst.ini /etc/odbcinst.ini
修改/etc/odbcinst.ini文件:
[ODBC
Drivers]
Impala_64_bit=Installed
[Impala_64_bit]
Description=Cloudera ODBC
Driver for Impala (64-bit)
Driver=/opt/cloudera/impalaodbc/lib/64/libclouderaimpalaodbc64.so
修改/etc/odbc.ini文件:
[ODBC]
# Specify any
global ODBC configuration here such as ODBC tracing.
[ODBC Data
Sources]
#Sample Cloudera
Impala DSN 32=Cloudera ODBC Driver for Impala 32-bit
impalaodbc=Impala_64_bit
[impalaodbc]
# Description: DSN
Description.
# This key is not
necessary and is only to give a description of the data source.
Description=Cloudera ODBC Driver for Impala (64-bit) DSN
# Driver: The
location where the ODBC driver is installed to.
Driver=/opt/cloudera/impalaodbc/lib/64/libclouderaimpalaodbc64.so
# The
DriverUnicodeEncoding setting is only used for SimbaDM
# When set to 1,
SimbaDM runs in UTF-16 mode.
# When set to 2,
SimbaDM runs in UTF-8 mode.
#DriverUnicodeEncoding=2
# Values for HOST,
PORT, KrbFQDN, and KrbServiceName should be set here.
# They can also be
specified on the connection string.
HOST=addata-olap-store.heyi.test
PORT=21050
Database=default
红色字体部分必须保持一直,/etc/odbcinst.ini定义驱动的配置,系统会默认读这个文件中配置的驱动,odbc.ini中直接调用这个驱动,蓝色字体表示最终使用的连接DNS名称。
修改/opt/cloudera/impalaodbc/lib/64/cloudera.impalaodbc.ini
下的此文件:
DriverManagerEncoding=UTF-32
ErrorMessagesPath=/opt/cloudera/impalaodbc/ErrorMessages/
LogLevel=0
LogPath=
## -
Uncomment the ODBCInstLib corresponding to the Driver Manager being
used.
## - Note
that the path to your ODBC Driver Manager must be specified in
LD_LIBRARY_PATH (LIBPATH for AIX).
## - Note
that AIX has a different format for specifying its shared
libraries.
# Generic
ODBCInstLib
#
iODBC
#ODBCInstLib=libiodbcinst.so
#
SimbaDM / unixODBC
ODBCInstLib=libodbcinst.so
--表示使用 unixODBC
# AIX
specific ODBCInstLib
#
iODBC
#ODBCInstLib=libiodbcinst.a(libiodbcinst.so.2)
#
SimbaDM
#ODBCInstLib=libodbcinst.a(odbcinst.so)
#
unixODBC
#ODBCInstLib=libodbcinst.a(libodbcinst.so.1)
2.5)测试连接是否成功:
+---------------------------------------+
| Connected!
|
|
|
| sql-statement
|
| help [tablename]
|
| quit
|
|
|
+---------------------------------------+
SQL>
到此 配置测试成功
----之前参考的文件
http://blog.csdn.net/yangzhaohui168/article/details/38800803
不知道为什么总是报错,由于不了解linux,所以也没弄清楚其中错误的原有。╮(╯▽╰)╭