Я использую сценарий python для подключения к удаленному серверу MS Sql. Я установил необходимые библиотеки в свой OSX m / c и попытался подключиться с помощью оболочки python, но операция не удалась. MS Sql не установлен локально на моем компьютере разработчика.
Python shell:
>>> cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 17 for SQL Server' : file not found (0) (SQLDriverConnect)")
>>>
Содержимое odbcinst.ini
[ODBC Driver 17 for SQL Server]
Description=Microsoft ODBC Driver 17 for SQL Server
Driver=/usr/local/lib/libmsodbcsql.17.dylib
Ссылка на файл драйвера, он присутствует.
lrwxr-xr-x 1 biju admin 56 Mar 23 07:57 libmsodbcsql.17.dylib -> ../Cellar/msodbcsql17/17.5.2.1/lib/libmsodbcsql.17.dylib
Используя путь к файлу непосредственно в драйвере, код работает.
Найден еще один файл odbcinst в /etc/odbcinst.ini
[ODBC Driver 13 for SQL Server]
Description=Microsoft ODBC Driver 13 for SQL Server
Driver=/usr/local/lib/libmsodbcsql.13.dylib
UsageCount=1
По указанному выше пути нет файла /usr/local/lib/libmsodbcsql.13.dylib. Я не уверен, правильно ли установлены эти две версии библиотеки или их нужно удалить.