Instalowanie biblioteki mssql-python

Sterownik mssql-python jest oficjalnym sterownikiem Microsoft Python dla SQL Server, Azure SQL Database, Azure SQL Managed Instance oraz bazy danych SQL w Microsoft Fabric. Zainstaluj sterownik na Windows, Linux lub macOS, używając pip lub conda.

Wymagania wstępne

  • Sterownik wymaga Python 3.10 lub nowszego i nie obsługuje wcześniejszych wersji Python.
  • Aby zainstalować za pomocą pip, należy użyć menedżera pakietów pip, który jest dołączony do Pythona.
  • Aby zainstalować za pomocą menedżera pakietów conda.

Important

Sterownik mssql-python wykorzystuje DDBC (Direct Database Connectivity), które łączy i zarządza warstwą ODBC wewnętrznie. Nie musisz osobno instalować sterownika Microsoft ODBC dla SQL Server.

Instalacja z PyPI

Zainstaluj sterownik za pomocą pip:

pip install mssql-python

Aby uaktualnić istniejącą instalację:

pip install --upgrade mssql-python

Aby zainstalować określoną wersję:

pip install mssql-python==1.16.0

Polecenie pip install mssql-python instaluje także dwa pakiety towarzyszące, których sterownik wymaga w czasie działania:

  • mssql-python-odbcdostarcza pliki binarne Microsoft ODBC Driver 18.
  • mssql-python-rs dostarcza runtime Rust, który obsługuje kopiowanie masowe oraz dostawcę opt-in mssql-odbc .

Począwszy od wersji 1.16.0, mssql-python przypina dokładne wersje obu pakietów. Wcześniejsze wersje nie wymagają mssql-python-rs. Przypięcia według wersji można znaleźć w artykule Wymagania zależności.

Zainstaluj z conda

Sterownik jest również dostępny na microsoft kanale w serwisie Anaconda.org:

conda install -c microsoft mssql-python

Pakiet conda jest samodzielnym pakietem. Zawiera wiązania Pythona, pliki binarne sterowników ODBC oraz runtime Rust, więc conda instaluje jeden pakiet zamiast trzech. Uruchamianie pip list w środowisku nadal pokazuje mssql-python-odbc i mssql-python-rs, ponieważ pakiet conda zawiera ich metadane pakietu. Conda wybiera wersję dopasowaną do Twojej platformy i wersji Python oraz zarządza aktualizacjami:

conda update -c microsoft mssql-python

Zainstaluj pakiet za pomocą conda lub pip w danym środowisku, nie obu.

Pakiet Conda zawiera następujące wymagania platformowe:

Platform Wersje języka Python Requirement
Windows x64 3.10 do 3.15 None.
Windows ARM64 3.12 do 3.15 None.
Linux x64, Linux ARM64 3.10 do 3.15 Glibc 2.34 i późniejsze wersje. Używaj pip na Red Hat Enterprise Linux (RHEL) 8, Alpine Linux i innych dystrybucjach ze starszą wersją glibc lub z musl.
macOS Intel, macOS Apple Silicon 3.10 do 3.15 macOS 15 i nowsze wersje. Szyfrowane połączenia wymagają zainstalowania OpenSSL w systemie, jak opisano w macOS. Sterownik nie ładuje OpenSSL ze środowiska conda.

Weryfikowanie instalacji

Po instalacji sprawdź, czy sterownik działa:

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}")

Oczekiwane dane wyjściowe:

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

Uwagi specyficzne dla platformy

Windows

Sterownik jest dostarczany jako wstępnie zbudowany pakiet wheel, który zawiera wszystkie niezbędne składniki.

Linux

Sterownik wymaga określonych bibliotek systemowych do uwierzytelniania Kerberos i dynamicznego ładowania. Zainstaluj je za pomocą menedżera pakietów w twojej dystrybucji:

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

W systemie RHEL 8 i innych dystrybucjach zgodnych z glibc 2.28 (AlmaLinux 8, Rocky Linux 8) sterownik instaluje się ze standardowego pakietu manylinux_2_28 wheel opublikowanego w PyPI.

Alpine Linux:

apk add libltdl krb5-libs libstdc++

macOS

Sterownik jest dostępny jako gruby universal2 binarny plik natywny zarówno na Apple Silicon (arm64), jak i Intel (x86_64) Macach. Nie potrzebujesz osobnej instalacji unixODBC.

Sterownik wymaga OpenSSL. Zainstaluj ją za pomocą Homebrew:

brew install openssl

Jeśli napotkasz błędy związane z SSL, upewnij się, że OpenSSL jest prawidłowo połączone:

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

Środowiska wirtualne

Aby uniknąć konfliktów, instaluj pakiety Python w środowisku wirtualnym:

# 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

Instalacja rozwojowa

Aby zainstalować sterownik wraz z zależnościami programistycznymi do prac nad nim:

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

Rozwiązywanie problemów z instalacją

Instalacja PIP nie udaje się przy "braku dopasowania dystrybucji"

Upewnij się, że używasz Python 3.10 lub nowszy:

python --version

Jeśli używasz starszej wersji Python, zaktualizuj Python lub użyj Pyenv do zarządzania wieloma wersjami.

Błąd importu po instalacji

Jeśli zobaczysz ModuleNotFoundError: No module named 'mssql_python', sprawdź, czy używasz tego samego środowiska Python, w którym zainstalowałeś pakiet.

pip show mssql-python

Błędy uprawnień na Linux/macOS

Jeśli napotkasz błędy uprawnień, unikaj używania sudo pip. Zamiast tego użyj środowiska wirtualnego lub flagi --user .

pip install --user mssql-python