2014-09-16 6 views
0

Я никогда раньше не использовал ODBC. Я всегда делал ручные соединения. Теперь я пытаюсь использовать OTL, и я просто не могу его настроить.Не удается настроить odbc

я понял, что по какой-то причине он не читает мои файлы в/и т.д./* 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"); 

[UnixODBC] [Driver Manager] Источник данных не найден, и драйвер по умолчанию не указано

ответ

1

Во-первых, что формат для odbcinst.ini файла не UnixODBC, это iODBC. Вам не нужны раздел [ODBC Drivers].

Во-вторых, unixODBC по умолчанию не выглядит в ~/.odbcinst.ini, он обычно выглядит в /etc/odbcinst.ini или /usr/local/etc/odbcinst.ini. Вы можете узнать, где UnixODBC ищет файлы с помощью odbcinst -j:

$ 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 определить свои драйверы, которые вы должны будете сказать UnixODBC, что, указав переменную окружения ODBCINSTINI на ваш файл.

+0

odbcinst -j был безупречный. Благодарю. – Bluebaron

Смежные вопросы