Установка Microsoft ODBC Driver for SQL Server (macOS)
В этой статье объясняется, как установить Microsoft ODBC Driver for SQL Server в macOS. В ней также содержатся инструкции для необязательных средств командной строки для SQL Server (bcp
и sqlcmd
) и заголовков разработки unixODBC.
В этой статье приведены команды для установки драйвера ODBC из оболочки bash. Сведения о том, как загрузить пакеты напрямую, см. в разделе Скачивание драйвера ODBC Driver for SQL Server.
Примечание.
Драйвер Microsoft ODBC Driver for SQL Server в macOS поддерживается только в 64-разрядной архитектуре до версии 17.7. Поддержка Apple ARM64 была добавлена начиная с версии 17.8. Будет обнаружена архитектура, и с помощью формулы Homebrew автоматически установится правильный пакет. Если командная строка работает в режиме эмуляции x64 в ARM64, будет установлен пакет x64. Если командная строка не работает в режиме эмуляции, будет установлен пакет ARM64.
Кроме того, каталог Homebrew по умолчанию изменился с архитектурой ARM64 на /opt/homebrew
. Пути в разделе "Файлы драйверов" используют пути x64 Homebrew, которые по умолчанию /usr/local
имеют значение, поэтому пути к файлам будут отличаться соответствующим образом.
Microsoft ODBC 18
Чтобы установить Microsoft ODBC Driver 18 for SQL Server в macOS, выполните следующие команды:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql18 mssql-tools18
предыдущих версий
В следующих разделах приведены инструкции по установке предыдущих версий драйвера Microsoft ODBC в macOS.
Microsoft ODBC 17
Чтобы установить Microsoft ODBC Driver 17 для SQL Server в macOS, выполните следующие команды:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
HOMEBREW_ACCEPT_EULA=Y brew install msodbcsql17 mssql-tools
Внимание
Если вы установили пакет msodbcsql
версии 17, который был доступен непродолжительное время, его следует удалить перед установкой пакета msodbcsql17
. Это позволит избежать конфликтов. Пакет msodbcsql17
можно установить параллельно с пакетом msodbcsql
версии 13.
ODBC 13.1
Используйте следующие команды для установки драйвера Microsoft ODBC Driver 13.1 for SQL Server в OS X 10.11 (El Capitan) и macOS 10.12 (Sierra):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
brew install msodbcsql@13.1.9.2 mssql-tools@14.0.6.0
Файлы драйвера
Драйвер ODBC в macOS состоит из следующих компонентов.
Компонент | Description |
---|---|
libmsodbcsql.18.dylib, libmsodbcsql.17.dylib или libmsodbcsql.13.dylib | Файл динамической библиотеки (dylib ), содержащий все функциональные возможности драйвера. Этот файл устанавливается в папке /usr/local/lib/ . |
msodbcsqlr18.rll или msodbcsqlr17.rll или msodbcsqlr13.rll |
Сопутствующий файл ресурса для библиотеки драйвера. Этот файл устанавливается в папке [driver .dylib directory]../share/msodbcsql18/resources/en_US/ для драйвера версии 18, [driver .dylib directory]../share/msodbcsql17/resources/en_US/ — версии 17 и [driver .dylib directory]../share/msodbcsql/resources/en_US/ — версии 13. |
msodbcsql.h | Файл заголовка, содержащий все новые определения, необходимые для использования драйвера. Примечание. В одной программе нельзя ссылаться на msodbcsql.h и odbcss.h одновременно. Файл msodbcsql.h устанавливается в папке /usr/local/include/msodbcsql18/ для драйвера версии 18, /usr/local/include/msodbcsql17/ — версии 17 и /usr/local/include/msodbcsql/ — версии 13. |
LICENSE.txt | Текстовый файл с условиями лицензионного соглашения. Этот файл помещается в папку /usr/local/share/doc/msodbcsql18/ для драйвера версии 18, /usr/local/share/doc/msodbcsql17/ — версии 17 и /usr/local/share/doc/msodbcsql/ — версии 13. |
RELEASE_NOTES | Текстовый файл с заметками о выпуске. Этот файл помещается в папку /usr/local/share/doc/msodbcsql18/ для драйвера версии 18, /usr/local/share/doc/msodbcsql17/ — версии 17 и /usr/local/share/doc/msodbcsql/ — версии 13. |
Загрузка файла ресурсов
Чтобы драйвер работал, он должен загрузить файл ресурсов. Этот файл имеет имя msodbcsqlr18.rll
, msodbcsqlr17.rll
или msodbcsqlr13.rll
в зависимости от версии драйвера. Файл .rll
располагается по пути относительно расположения самого драйвера (so
или dylib
), как указано в таблице компонентов. По состоянию на версию 17.1 драйвер также пытается загрузить .rll
из каталога по умолчанию, если загрузка из относительного пути завершается ошибкой. Путь к файлу ресурсов по умолчанию в macOS: /usr/local/share/msodbcsql18/resources/en_US/
Устранение неполадок
Некоторые пользователи столкнулись с проблемой при попытке подключения после установки драйвера ODBC и получили сообщение об ошибке следующего вида: "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 18 for SQL Server' : file not found (0) (SQLDriverConnect)"
. Это может быть так, что unixODBC настроен неправильно для поиска зарегистрированных драйверов. В таких случаях проблему можно решить созданием символических ссылок.
sudo ln -s /usr/local/etc/odbcinst.ini /etc/odbcinst.ini
sudo ln -s /usr/local/etc/odbc.ini /etc/odbc.ini
В других случаях, когда вы не можете подключиться к SQL Server с помощью драйвера ODBC, ознакомьтесь с известными проблемами, связанными с устранением неполадок подключения.
Если brew не удается найти формулы, убедитесь, что вы не пропустили этап установки: brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
.