Partilhar via


Instale o driver Microsoft ODBC para SQL Server (macOS)

Este artigo explica como instalar o Driver Microsoft ODBC para SQL Server no macOS. Ele também inclui instruções para as ferramentas de linha de comando opcionais para SQL Server (bcp e sqlcmd) e os cabeçalhos de desenvolvimento unixODBC.

Este artigo fornece comandos para instalar o driver ODBC a partir do shell bash. Se quiseres descarregar os pacotes diretamente, consulta Descarregar o Driver ODBC para SQL Server.

Observação

O driver Microsoft ODBC para SQL Server no macOS é suportado apenas na arquitetura x64 até à versão 17.7. O suporte para Apple ARM64 foi adicionado a partir da versão 17.8. A arquitetura será detetada e o pacote correto será automaticamente instalado pela fórmula Homebrew. Se o teu prompt de comandos estiver a correr em modo de emulação x64 no ARM64, o pacote x64 será instalado. Se não estiveres a correr em modo de emulação no prompt de comandos, o pacote ARM64 será instalado. Além disso, o diretório predefinido Homebrew mudou, com a arquitetura ARM64, para /opt/homebrew. Os caminhos na secção de ficheiros de drivers usam os caminhos homebrew x64, que por defeito são /usr/local, por isso os caminhos dos ficheiros variam em conformidade.

Microsoft ODBC 18

Para instalar o driver Microsoft ODBC 18 para SQL Server no macOS, execute os seguintes comandos:

/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

Versões anteriores

As secções seguintes fornecem instruções para instalar versões anteriores do driver Microsoft ODBC no macOS.

Microsoft ODBC 17

Para instalar o driver Microsoft ODBC 17 para SQL Server no macOS, execute os seguintes comandos:

/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

Importante

Se instalaste o pacote v17 msodbcsql que esteve disponível brevemente, deves removê-lo antes de instalar o msodbcsql17 pacote. Isto evitará conflitos. O pacote msodbcsql17 pode ser instalado lado a lado com o pacote msodbcsql v13.

ODBC 13,1

Use os seguintes comandos para instalar o driver Microsoft ODBC 13.1 para SQL Server no OS X 10.11 (El Capitan) e 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

Arquivos de driver

O driver ODBC no macOS consiste nos seguintes componentes:

Componente Description
libmsodbcsql.18.dylib ou libmsodbcsql.17.dylib ou libmsodbcsql.13.dylib O ficheiro da biblioteca dinâmica (dylib) que contém toda a funcionalidade do driver. Este ficheiro está instalado em /usr/local/lib/.
msodbcsqlr18.rll ou msodbcsqlr17.rll ou msodbcsqlr13.rll O arquivo de recurso que acompanha a biblioteca de controlador. Este ficheiro está instalado para [driver .dylib directory]../share/msodbcsql18/resources/en_US/ o Driver 18, [driver .dylib directory]../share/msodbcsql17/resources/en_US/ para o Driver 17 e para [driver .dylib directory]../share/msodbcsql/resources/en_US/ o Driver 13.
msodbcsql.h O arquivo de cabeçalho que contém todas as novas definições necessárias para usar o driver.

Nota: Não é possível fazer referência a msodbcsql.h e odbcss.h no mesmo programa.
msodbcsql.h está instalado em /usr/local/include/msodbcsql18/ para o Driver 18, em /usr/local/include/msodbcsql17/ para o Driver 17 e em /usr/local/include/msodbcsql/ para o Driver 13.
LICENSE.txt O arquivo de texto que contém os termos do End-User Contrato de Licença. Este ficheiro é colocado em /usr/local/share/doc/msodbcsql18/ para o Driver 18, em /usr/local/share/doc/msodbcsql17/ para o Driver 17 e em /usr/local/share/doc/msodbcsql/ para o Driver 13.
NOTAS_DE_LIBERTAÇÃO O ficheiro de texto que contém notas de versão. Este ficheiro é colocado no /usr/local/share/doc/msodbcsql18/ para o Driver 18, no /usr/local/share/doc/msodbcsql17/ para o Driver 17 e no /usr/local/share/doc/msodbcsql/ para o Driver 13.

Carregamento de arquivos de recursos

O driver precisa de carregar o ficheiro de recursos para funcionar. Este ficheiro chama-se msodbcsqlr18.rll, msodbcsqlr17.rll, ou msodbcsqlr13.rll dependendo da versão do driver. A localização do .rll ficheiro é relativa à localização do próprio driver (so ou dylib), conforme indicado na tabela de componentes. A partir da versão 17.1, se o carregamento do caminho relativo falhar, o driver também tenta carregar o .rll do diretório padrão. O caminho padrão do ficheiro de recurso no macOS é /usr/local/share/msodbcsql18/resources/en_US/

Solução de problemas

Alguns utilizadores encontram um problema ao tentar ligar-se após instalar o driver ODBC e recebem um erro como: "[01000] [unixODBC][Driver Manager]Can't open lib 'ODBC Driver 18 for SQL Server' : file not found (0) (SQLDriverConnect)". Pode ser que o unixODBC não esteja configurado corretamente para encontrar drivers registados. Nestes casos, criar ligações simbólicas pode resolver o problema.

sudo ln -s /usr/local/etc/odbcinst.ini /etc/odbcinst.ini
sudo ln -s /usr/local/etc/odbc.ini /etc/odbc.ini

Para outros casos em que não consegue fazer ligação ao SQL Server usando o driver ODBC, consulte o artigo sobre problemas conhecidos sobre resolução de problemas de ligação.

Se a Brew está com dificuldades em encontrar as fórmulas, certifica-te de que não pulaste a fase de instalação: brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release