У меня возникли проблемы с подключением к Microsoft SQL Server 2012 с моего сервера FreeBSD 10.1.«Неизвестное имя хост-машины». на FreeBSD + unixODBC + FreeTDS
Я установил FreeTDS и unixODBC через порты. Я собрал FreeTDS с поддержкой unixODBC. Это ist мой freetds.conf:
[server1]
host = 192.168.100.147
port = 1433
tds version = 7.2
Вызов tsql отлично работает.
Но когда я пытаюсь подключиться с помощью ODBC с "OSQL" или "ISQL" присоединительные failes со следующей ошибкой:
checking shared odbc libraries linked to isql for default directories...
trying /tOH ... no
trying /tOH ... no
trying /tmp/sqlH ... no
trying /tmp/sqlH ... no
trying /usr/locH ... no
trying /usr/locH ... no
trying /tmp/sql.log ... no
trying /home ... no
trying /.odbc.ini ... no
trying /usr/local/etc ... OK
checking odbc.ini files
reading /root/.odbc.ini
[server1] not found in /root/.odbc.ini
reading /usr/local/etc/odbc.ini
[server1] found in /usr/local/etc/odbc.ini
found this section:
[server1]
Driver = FreeTDS
Servername = server1
looking for driver for DSN [server1] in /usr/local/etc/odbc.ini
found driver line: " Driver = FreeTDS"
driver "FreeTDS" found for [server1] in odbc.ini
found driver named "FreeTDS"
"FreeTDS" is not an executable file
looking for entry named [FreeTDS] in /usr/local/etc/odbcinst.ini
found driver line: " Driver = /usr/local/lib/libtdsodbc.so"
found driver /usr/local/lib/libtdsodbc.so for [FreeTDS] in odbcinst.ini
/usr/local/lib/libtdsodbc.so is an executable file
Using ODBC-Combined strategy
DSN [server1] has servername "server1" (from /usr/local/etc/odbc.ini)
cannot read "/root/.freetds.conf"
/usr/local/etc/freetds/freetds.conf is a readable file
looking for [server1] in /usr/local/etc/freetds/freetds.conf
found this section:
[server1]
host = 192.168.100.147
port = 1433
tds version = 7.2
looking up hostname for ip address 192.168.100.147
Configuration looks OK. Connection details:
DSN: server1
odbc.ini: /usr/local/etc/odbc.ini
Driver: /usr/local/lib/libtdsodbc.so
Server hostname: sqlsrv01
Address: 192.168.100.147
Attempting connection as sa ...
+ isql server1 sa foobar -v
[S1000][unixODBC][FreeTDS][SQL Server]Unable to connect to data source
[01000][unixODBC][FreeTDS][SQL Server]Unknown host machine name.
[ISQL]ERROR: Could not SQLConnect
Это содержание моего ODBC.ini:
[server1]
Driver = FreeTDS
Servername = server1
И это мой odbcinst.ini:
[FreeTDS]
Driver = /usr/local/lib/libtdsodbc.so
Client Charset = UTF-8
UsageCount = 1
Я прочитал severeal сообщения относительно к использованию именования инфа odbc.i ni и freetds.conf, но соединение продолжает терпеть неудачу.
Может ли кто-нибудь помочь?
Попробуйте задать этот вопрос на [ServerFault] (http://serverfault.com/), поскольку это связано с администрированием сервера и не имеет никакого отношения к программированию. – Antxon
сделаю. Благодарю. :) – st4rbuck
Я голосую, чтобы закрыть этот вопрос как не относящийся к теме, потому что он должен быть перенесен в ServerFault. –