【发布时间】:2017-11-13 15:44:59
【问题描述】:
我的默认用户可以毫无问题地使用 unixodbc。但是当我切换到另一个用户时,我得到一个错误。
[centos@ ~]$ odbcinst -q -s
[ODBC]
[Amazon Redshift DSN 32]
[centos@ ~]$ su ruser
Password:
[ruser@ centos]$ odbcinst -q -s
odbcinst: SQLGetPrivateProfileString failed with Unable to find component name.
在两个用户中都设置了环境变量:
AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini
ODBCSYSINI=/usr/local/odbc
ODBCINI=/etc/odbc.ini
LD_LIBRARY_PATH=/usr/local/lib
LD_PRELOAD=/usr/local/lib/libodbcinst.so
odbc配置如下:
[ruser@ centos]$ odbcinst -j
unixODBC 2.3.4
DRIVERS............: /usr/local/odbc /odbcinst.ini
SYSTEM DATA SOURCES: /usr/local/odbc /odbc.ini
FILE DATA SOURCES..: /usr/local/odbc /ODBCDataSources
USER DATA SOURCES..: /etc/odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
顺便说一句,我不明白为什么上面的路径中有空格。我不知道是否有办法改变它们。有什么想法可以解决这个问题吗?两个用户的整体 odbc 配置似乎相同。
【问题讨论】: