Microsoft ODBC Driver for SQL Server をインストールする (macOS)

この記事では、Microsoft ODBC Driver for SQL Server を macOS にインストール方法について説明します。 また、SQL Server 用のオプションのコマンドライン ツール (bcp および sqlcmd) と、unixODBC 開発ヘッダーについても説明します。

この記事では、Bash シェルから ODBC ドライバーをインストールするためのコマンドについて説明します。 パッケージを直接ダウンロードする場合は、「ODBC Driver for SQL Server のダウンロード」を参照してください。

Note

macOS 上の Microsoft ODBC Driver for SQL Server は、バージョン 17.7 を介して x64 アーキテクチャでのみサポートされています。 バージョン 17.8 から、Apple ARM64 がサポートされるようになりました。 アーキテクチャが検出され、Homebrew 式によって適切なパッケージが自動的にインストールされます。 コマンド プロンプトが ARM64 の x64 エミュレーション モードで実行されている場合は、x64 パッケージがインストールされます。 コマンド プロンプトがエミュレーション モードで実行されていない場合は、ARM64 パッケージがインストールされます。 また、Homebrew の既定のディレクトリが ARM64 アーキテクチャで /opt/homebrew に変更されました。 「ドライバー ファイル」セクションのパスでは x64 の Homebrew パスが使用されています (既定値は /usr/local)。このため、実際のファイル パスは異なる場合があります。

Microsoft ODBC 18

macOS に Microsoft ODBC Driver 18 for SQL Server をインストールするには、次のコマンドを実行します。

/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 Driver を macOS にインストールする手順について説明します。

Microsoft ODBC 17

macOS に Microsoft ODBC Driver 17 for SQL Server をインストールするには、次のコマンドを実行します。

/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

重要

短期間利用可能だった v17 msodbcsql パッケージをインストールしている場合は、msodbcsql17 パッケージのインストール前に削除する必要があります。 これにより、競合が回避されます。 msodbcsql17 パッケージは msodbcsql v13 パッケージと並行してインストールできます。

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

ドライバー ファイル

macOS 上の ODBC ドライバーは、次のコンポーネントで構成されています。

コンポーネント 説明
libmsodbcsql.18.dylib、libmsodbcsql.17.dylib、または libmsodbcsql.13.dylib ドライバーのすべての機能を含むダイナミック ライブラリ (dylib) ファイル。 このファイルは /usr/local/lib/ にインストールされます。
msodbcsqlr18.rll または msodbcsqlr17.rll または msodbcsqlr13.rll ドライバー ライブラリに付随するリソース ファイル。 このファイルは、Driver 18 の場合は [driver .dylib directory]../share/msodbcsql18/resources/en_US/、Driver 17 の場合は [driver .dylib directory]../share/msodbcsql17/resources/en_US/、Driver 13 の場合は [driver .dylib directory]../share/msodbcsql/resources/en_US/ にインストールされます。
msodbcsql.h ドライバーを使用するために必要な新しい定義がすべて含まれているヘッダー ファイル。

注: msodbcsql.h と odbcss.h を同じプログラムで参照することはできません。
msodbcsql.h は、Driver 18 の場合は /usr/local/include/msodbcsql18/、Driver 17 の場合は /usr/local/include/msodbcsql17/、Driver 13 の場合は /usr/local/include/msodbcsql/ にインストールされます。
LICENSE.txt 使用許諾契約書の条項を含むテキスト ファイル。 このファイルは、Driver 18 の場合は /usr/local/share/doc/msodbcsql18/、Driver 17 の場合は /usr/local/share/doc/msodbcsql17/、Driver 13 の場合は /usr/local/share/doc/msodbcsql/ に配置されます。
RELEASE_NOTES リリース ノートを含むテキスト ファイル。 このファイルは、Driver 18 の場合は /usr/local/share/doc/msodbcsql18/、Driver 17 の場合は /usr/local/share/doc/msodbcsql17/、Driver 13 の場合は /usr/local/share/doc/msodbcsql/ に配置されます。

リソース ファイルの読み込み

ドライバーが機能するには、リソース ファイルを読み込む必要があります。 このファイルは、ドライバーのバージョンに応じて msodbcsqlr18.rllmsodbcsqlr17.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

ODBC ドライバーを使用して SQL Server に接続できないその他のケースについては、接続の問題のトラブルシューティングに関する既知の問題の記事を参照してください。

数式の検索に関する問題が Brew で発生している場合は、インストール手順をスキップしていないことを確認してください: brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release