mssql-python をインストールする

mssql-pythonドライバーは、Microsoft Microsoft FabricのSQL Server、Azure SQL Database、Azure SQL Managed Instance、SQLデータベースの公式Pythonドライバーです。 Windows、Linux、macOSにpipまたはcondaを使ってドライバーをインストールしてください。

前提条件

  • このドライバーはPython 3.10以降が必要で、以前のPythonバージョンはサポートしていません。
  • pip でインストールするには、Python に付属のpipパッケージマネージャーを使用します。
  • condaでインストールするには、conda パッケージマネージャーを使用します。

Important

mssql-pythonドライバは DDBC (Direct Database Connectivity)を使用しており、ODBC層を内部でバンドル・管理しています。 SQL ServerのMicrosoft ODBCドライバーを別途インストールする必要はありません。

PyPI からインストールする

PIPを使ってドライバーをインストールする:

pip install mssql-python

既存のインストールをアップグレードするには:

pip install --upgrade mssql-python

特定のバージョンをインストールするには、以下を実行します。

pip install mssql-python==1.16.0

pip install mssql-pythonコマンドはまた、実行時にドライバーが必要とする2つの補助パッケージをインストールします。

  • mssql-python-odbc には Microsoft ODBC Driver 18 バイナリが含まれています。
  • mssql-python-rs Rustランタイムを搭載し、バルクコピーを支え、オプトイン方式の mssql-odbc プロバイダーを提供します。

バージョン1.16.0から、mssql-python では両方のパッケージの正確なバージョンがピン留めされます。 以前のバージョンでは mssql-python-rsは必要ありません。 バージョン別ピンについては「 依存関係要件」を参照してください。

Condaからのインストール

ドライバーは microsoft のチャンネルでも利用可能です:

conda install -c microsoft mssql-python

condaパッケージは自己完結型のパッケージです。 Pythonのバインディング、ODBCドライバのバイナリ、Rustランタイムが含まれているため、condaは3つのパッケージではなく1つのパッケージをインストールします。 環境内で pip list を実行しても、condaパッケージにはパッケージのメタデータが含まれているため、まだ mssql-python-odbc と mssql-python-rsが表示されます。 CondaはあなたのプラットフォームとPythonバージョンに合ったビルドを選択し、アップグレードを管理します:

conda update -c microsoft mssql-python

同じ環境でcondaかpipのいずれかでドライバーをインストールしてください。両方は入れないでください。

コンダパッケージには以下のプラットフォーム要件があります:

Platform Python のバージョン Requirement
Windows x64 3.10から3.15まで None.
WINDOWS ARM64 3.12から3.15まで None.
Linux x64、Linux ARM64 3.10から3.15まで GLIBC 2.34以降のバージョン。 Red Hat Enterprise Linux(RHEL)8、Alpine Linux、古いglibcまたはmuslを使用するその他のディストリビューションでpipを使用してください。
macOS Intel、macOS Apple Silicon 3.10から3.15まで macOS 15以降のバージョン。 暗号化接続には macOSで説明されているOpenSSLがシステムにインストールされている必要があります。 ドライバーはconda環境からOpenSSLを読み込みません。

インストールを確認する

取り付け後、ドライバーが動作しているか確認してください:

import mssql_python

print(f"mssql-python version: {mssql_python.__version__}")
print(f"DB-API level: {mssql_python.apilevel}")
print(f"Thread safety: {mssql_python.threadsafety}")
print(f"Parameter style: {mssql_python.paramstyle}")

予想される出力:

mssql-python version: 1.16.0
DB-API level: 2.0
Thread safety: 1
Parameter style: pyformat

プラットフォーム固有の注意事項

Windows

このドライバーは、必要なコンポーネントがすべて含まれた組み立て済みのホイールとして提供されます。

Linux

このドライバはKerberos認証および動的読み込みのために特定のシステムライブラリを必要とします。 ディストリビューションのパッケージマネージャーを使ってインストールしてください:

Ubuntu/Debian:

sudo apt-get update
sudo apt-get install libltdl7 libkrb5-3 libgssapi-krb5-2

Red Hat/CentOS/Fedora:

sudo dnf install libtool-ltdl krb5-libs

Note

RHEL 8および他のglibc 2.28互換ディストリビューション(AlmaLinux 8、Rocky Linux 8)では、ドライバーはPyPIに公開された標準の manylinux_2_28 ホイールからインストールされます。

Alpine Linux:

apk add libltdl krb5-libs libstdc++

macOS

ドライバーは universal2 ファットバイナリとして出荷され、Apple Silicon(arm64)とIntel(x86_64)Macの両方でネイティブに動作します。 別途UnixODBCをインストールする必要はありません。

ドライバーはOpenSSLが必要です。 Homebrewを使ってインストールする方法:

brew install openssl

SSL関連のエラーが発生した場合は、OpenSSLが正しくリンクされていることを確認してください:

export LDFLAGS="-L/opt/homebrew/opt/openssl/lib"
export CPPFLAGS="-I/opt/homebrew/opt/openssl/include"

仮想環境

競合を避けるために、Pythonパッケージは仮想環境にインストールしてください:

# Create a virtual environment
python -m venv .venv

# Activate it (Windows)
.venv\Scripts\activate

# Activate it (Linux/macOS)
source .venv/bin/activate

# Install the driver
pip install mssql-python

開発用インストール

開発依存関係でドライバーをインストールし、ドライバーに貢献するには:

git clone https://github.com/microsoft/mssql-python.git
cd mssql-python
pip install -e ".[dev]"

インストールの問題をトラブルシューティングする

PIPのインストールが「マッチングディストリビューションなし」で失敗します

Python 3.10以降を使用していることを確認してください:

python --version

古いPythonバージョンを使っているなら、Pythonをアップグレードするか、pyenvを使って複数のバージョンを管理してください。

インストール後のインポートエラー

もし見つけたら、パッケージをインストールしたPython環境と同じModuleNotFoundError: No module named 'mssql_python'を使っているか確認してください。

pip show mssql-python

Linux/macOSでの権限エラー

権限エラーが発生した場合は、 sudo pipの使用を避けてください。 代わりに、仮想環境や --user フラグを使いましょう。

pip install --user mssql-python