Я намагаюся підключитися до бази даних 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? Я дуже вдячний за допомогу.
Нижче наведено процедуру, яку я використовував для налаштування вільних та unixodbc . Заздалегідь дякуємо за вашу допомогу!
Порядок
По-перше, я встановив такі пакети з:
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc
і налаштували ладочки наступним чином:
--- /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