让 odbc 驱动程序与 linux 的 windows 子系统一起工作
Getting odbc drivers to work with windows subsystem for linux
我正在尝试配置 Teradata 16.20.00.54 ODBC 驱动程序以在 Ubuntu 上工作(在 windows 子系统下用于 linux)。我一直遇到很多深奥的错误,所以我想知道是否有可能让它与 WSL 一起工作。
(1) 我下载了 ubuntu here
的 teradata 驱动程序
(2)然后我按照说明配置了ODBC驱动here
这是我的设置:
$ odbcinst -j
unixODBC 2.3.4
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/myusername/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
$ odbcinst -q -d
odbcinst: SQLGetPrivateProfileString failed with .
$ odbcinst -q -s
[<DSN_name>]
$ cat ~/.odbc.ini
[ODBC Data Sources]
Teradata ODBC DSN = Teradata Database ODBC Driver 16.20
<DSN_name> = DEVDB
[<DSN_name>]
Driver=/opt/teradata/client/ODBC_64/lib/tdataodbc_sb64.so
Description=Teradatadatabase
DBCName=DEVDB.mycompany.com
UID=XXXXXXX
PWD=XXXXXXX
$ cat /etc/odbcinst.ini
$ echo $ODBCINI
/home/myusername/.odbc.ini
我对 teradata 非常缺乏经验,因此我的配置可能存在某些问题。
这是我收到的错误消息:
$ isql DEVDB -v
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
我认为您对配置示例的解释有点太字面意思了。对于名为 DEVDB 的 DSN,您的 .odbc.ini 看起来更像这样:
[ODBC Data Sources]
DEVDB=Teradata Database ODBC Driver
[DEVDB]
Driver=/opt/teradata/client/ODBC_64/lib/tdataodbc_sb64.so
Description=Teradatadatabase
DBCName=DEVDB.mycompany.com
UID=XXXXXXX
PWD=XXXXXXX
我正在尝试配置 Teradata 16.20.00.54 ODBC 驱动程序以在 Ubuntu 上工作(在 windows 子系统下用于 linux)。我一直遇到很多深奥的错误,所以我想知道是否有可能让它与 WSL 一起工作。
(1) 我下载了 ubuntu here
的 teradata 驱动程序(2)然后我按照说明配置了ODBC驱动here
这是我的设置:
$ odbcinst -j
unixODBC 2.3.4
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/myusername/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
$ odbcinst -q -d
odbcinst: SQLGetPrivateProfileString failed with .
$ odbcinst -q -s
[<DSN_name>]
$ cat ~/.odbc.ini
[ODBC Data Sources]
Teradata ODBC DSN = Teradata Database ODBC Driver 16.20
<DSN_name> = DEVDB
[<DSN_name>]
Driver=/opt/teradata/client/ODBC_64/lib/tdataodbc_sb64.so
Description=Teradatadatabase
DBCName=DEVDB.mycompany.com
UID=XXXXXXX
PWD=XXXXXXX
$ cat /etc/odbcinst.ini
$ echo $ODBCINI
/home/myusername/.odbc.ini
我对 teradata 非常缺乏经验,因此我的配置可能存在某些问题。
这是我收到的错误消息:
$ isql DEVDB -v
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
我认为您对配置示例的解释有点太字面意思了。对于名为 DEVDB 的 DSN,您的 .odbc.ini 看起来更像这样:
[ODBC Data Sources]
DEVDB=Teradata Database ODBC Driver
[DEVDB]
Driver=/opt/teradata/client/ODBC_64/lib/tdataodbc_sb64.so
Description=Teradatadatabase
DBCName=DEVDB.mycompany.com
UID=XXXXXXX
PWD=XXXXXXX