Я пытаюсь подключиться к базе данных MS SQL, используя freetds и unixodbc . Я читал различные руководства, как это сделать, но никто не работает нормально для меня. Когда я пытаюсь подключиться к базе данных с помощью инструмента isql , я получаю следующую ошибку:
$ isql -v TS username password
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
Кто-нибудь уже успешно установил соединение с базой данных MS SQL, используя freetds и unixodbc в Ubuntu 12.04? Я был бы очень признателен за помощь.
Ниже приведена процедура, которую я использовал для настройки freetds и unixodbc . Заранее спасибо за помощь!
Процедура
Сначала я установил следующие пакеты:
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc
и настроил freetds следующим образом:
--- /etc/freetds/freetds.conf ---
[TS]
host = SERVER
port = 1433
tds version = 7.0
client charset = UTF-8
Используя инструмент tsql , я могу успешно подключиться к базе данных, выполнив
tsql -S TS -U username -P password
Поскольку мне нужно соединение odbc, я настроил odbcinst.ini следующим образом:
--- /etc/odbcinst.ini ---
[FreeTDS]
Description = FreeTDS
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
FileUsage = 1
CPTimeout =
CPResuse =
client charset = utf-8
и odbc.ini следующим образом:
--- /etc/odbc.ini ---
[TS]
Description = "test"
Driver = FreeTDS
Servername = SERVER
Server = SERVER
Port = 1433
Database = DBNAME
Trace = No
Попытка подключиться к базе данных с помощью инструмента isql с такой конфигурацией приводит к следующей ошибке:
$ isql -v TS username password
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
tsql
:sudo apt-get install freetds-bin