我以前从没用过ODBC。我一直都做手工连接。现在我正在尝试使用OTL,但我无法配置它。
我发现由于某种原因,它没有读取/etc/odbc*中的文件。
它正在从我的导演(.odbc.ini .odbinst.ini)那里读取这些文件。
~/.odbc.ini:
[localhost]
Driver = MyODBC Driver
Description = MyODBC
SERVER = localhost
USER = root
Password = mypass
Database = mydb
SOCKET =~/.odbcinst.ini:
[ODBC Drivers]
MyODBC Driver = Installed
[MyODBC Driver]
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so这就是当我试图连接
con_.rlogon("DSN=localhost");未找到unixODBCData源名称,也未指定默认驱动程序。
发布于 2014-09-16 07:53:41
首先,odbcinst.ini文件的格式不是unixODBC,而是iODBC。您不需要ODBC驱动程序部分。
其次,默认情况下,unixODBC不会在~/.odbcinst.ini中查找,它通常在/etc/odbcinst.ini或/usr/local/etc/odbcinst.ini中查找。您可以使用odbcinst unixODBC查找文件的位置:
$ odbcinst -j
unixODBC 2.2.14
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/martin/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8如果坚持使用~/odbcinst.ini来定义驱动程序,则需要通过将ODBCINSTINI环境变量指向您的文件来告诉unixODBC。
https://stackoverflow.com/questions/25862145
复制相似问题