Installieren der SQL Server-Befehlszeilentools „sqlcmd“ und „bcp“ unter Linux

Gilt für:SQL Server – Linux

Über die folgenden Schritte werden die Befehlszeilentools, die Microsoft ODBC-Treiber und deren Abhängigkeiten installiert. Das Paket mssql-tools enthält Folgendes:

  • sqlcmd: Abfragehilfsprogramm für die Befehlszeile
  • bcp: Hilfsprogramm für den Massenimport/-export

Installieren Sie die Tools für Ihre Plattform:

In diesem Artikel wird beschrieben, wie die Befehlszeilentools installiert werden. Beispiele zur Verwendung von sqlcmd oder bcp finden Sie unter Verwandte Inhalte am Ende dieses Artikels.

Wichtig

sqlcmd und bcp sind in mssql-tools18 für die x64 und arm64-Architektur verfügbar. Eine moderne Alternative für Linux, macOS und Windows finden Sie unter go-sqlcmd-Hilfsprogramm.

Installieren von Tools unter Linux

Diese Anweisungen gelten für die Installation der Microsoft ODBC 18-Pakete. Informationen zu vorherigen Versionen finden Sie unter Installieren des Microsoft-ODBC-Treibers für SQL Server (Linux).

Führen Sie unter Red Hat Enterprise Linux die folgenden Schritte aus, um mssql-tools18 zu installieren.

  1. Laden Sie die Konfigurationsdatei für das Microsoft Red Hat-Repository herunter.

    • Verwenden Sie für Red Hat 9 den folgenden Befehl:

      curl https://packages.microsoft.com/config/rhel/9/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Verwenden Sie für Red Hat 8 den folgenden Befehl:

      curl https://packages.microsoft.com/config/rhel/8/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
    • Verwenden Sie für Red Hat 7 den folgenden Befehl:

      curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/mssql-release.repo
      
  2. Wenn Sie eine frühere Version von mssql-tools installiert hatten, entfernen Sie alle älteren unixODBC-Pakete.

    sudo yum remove mssql-tools unixODBC-utf16 unixODBC-utf16-devel
    
  3. Führen Sie die folgenden Befehle aus, um mssql-tools18 mit dem unixODBC-Entwicklerpaket zu installieren.

    sudo yum install -y mssql-tools18 unixODBC-devel
    

    Hinweis

    Führen Sie die folgenden Befehle aus, um mssql-tools auf die neueste Version zu aktualisieren:

    sudo yum check-update
    sudo yum update mssql-tools18
    
  4. Optional: Fügen Sie in einer Bash-Shell /opt/mssql-tools18/bin/ zu Ihrer PATH-Umgebungsvariablen hinzu.

    Um sqlcmd und bcp von der Bash-Shell aus für Anmeldesitzungen zugänglich zu machen, ändern Sie mit dem folgenden Befehl PATH in der -~/.bash_profileDatei:

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile
    

    Um sqlcmd oder bcp von der Bash-Shell aus für interaktive Sitzungen oder Sitzungen ohne Anmeldung zugänglich zu machen, ändern Sie mit dem folgenden Befehl PATH in der ~/.bashrc-Datei:

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
    source ~/.bashrc
    

Installieren von Tools unter macOS

Installieren Sie Homebrew, falls Sie es noch nicht installiert haben:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Verwenden Sie die folgenden Befehle, um die Tools für macOS El Capitan und höhere Versionen zu installieren:

# brew untap microsoft/mssql-preview if you installed the preview version
brew tap microsoft/mssql-release https://github.com/Microsoft/homebrew-mssql-release
brew update
brew install mssql-tools18

Installieren von Tools in Docker

Wenn Sie SQL Server in einem Docker-Container ausführen, sind die SQL Server-Befehlszeilentools bereits im Linux-Containerimage von SQL Server enthalten. Wenn Sie mithilfe einer interaktiven Bash-Shell mit einem ausgeführten Container verbunden sind, können Sie die Tools lokal ausführen.

Wenn Sie mit den SQL Server-Befehlszeilentools einen Container erstellen, sollten Sie dem Installationsbefehl ACCEPT_EULA=Y hinzufügen, um die Lizenzbedingungen automatisch zu akzeptieren und die Imageerstellung nicht zu unterbrechen. Ein Beispiel für den endgültigen Befehl für die Installation auf einem Ubuntu-Image lautet:

sudo ACCEPT_EULA=Y apt-get install mssql-tools18 unixodbc-dev

Offlineinstallation

Wenn Ihr Linux-Computer keinen Zugriff auf die Onlinerepositorys hat, die in den vorherigen Abschnitten verwendet werden, können Sie die Paketdateien direkt herunterladen. Diese Pakete befinden sich im Microsoft-Repository https://packages.microsoft.com.

Tipp

Wenn Sie die Installation mithilfe der Schritte in den vorherigen Abschnitten erfolgreich abgeschlossen haben, müssen Sie die nachstehend aufgeführten Pakete nicht herunterladen oder manuell installieren. Dies gilt nur für das Offlineszenario.

  1. Suchen und kopieren Sie zunächst das Paket mssql-tools18 für Ihre Linux-Distribution. Für Red Hat 8.0 befindet sich dies unter https://packages.microsoft.com/rhel/8/prod.

  2. Suchen und kopieren Sie auch das Paket msodbcsql18, bei dem es sich um eine Abhängigkeit handelt. Das msodbcsql18-Paket weist auch eine Abhängigkeit von unixODBC-devel auf. Für Red Hat befindet sich das msodbcsql18-Paket unter https://packages.microsoft.com/rhel/8/prod.

  3. Verschieben Sie die heruntergeladenen Pakete auf Ihren Linux-Computer. Wenn Sie einen anderen Computer zum Herunterladen der Pakete verwendet haben, stellt der Befehl scp eine Möglichkeit dar, die Pakete auf Ihren Linux-Computer zu verschieben.

  4. Installieren der Pakete: Installieren Sie die Pakete mssql-tools18 und msodbc18. Wenn Abhängigkeitsfehler auftreten, ignorieren Sie diese bis zum nächsten Schritt. Ersetzen Sie <version> durch die richtige Version:

    sudo yum localinstall msodbcsql18-<version>.rpm
    sudo yum localinstall mssql-tools18-<version>.rpm
    
  5. Lösen Sie fehlende Abhängigkeiten auf: Zu diesem Zeitpunkt fehlen möglicherweise Abhängigkeiten. Falls nicht, können Sie diesen Schritt überspringen. In einigen Fällen müssen Sie diese Abhängigkeiten manuell suchen und installieren.

    Sie können die erforderlichen Abhängigkeiten mithilfe der folgenden Befehle überprüfen. Ersetzen Sie <version> durch die richtige Version:

    rpm -qpR msodbcsql18-<version>.rpm
    rpm -qpR mssql-tools18-<version>.rpm
    

Ein Beispiel für die Verwendung von sqlcmd zum Herstellen einer Verbindung mit SQL Server und zum Erstellen einer Datenbank finden Sie in einem der folgenden Schnellstarts:

Ein Beispiel für die Verwendung von bcp für den Massenimport und -export von Daten finden Sie unter Bulk copy data to SQL Server on Linux (Massenkopieren von Daten auf SQL Server für Linux).

Zur SQL-Dokumentation beitragen

Wussten Sie schon, dass Sie SQL-Inhalte selbst bearbeiten könnten? Hierdurch helfen Sie nicht nur mit, unsere Dokumentation zu verbessern, sondern Sie werden auch als Mitwirkender an der Seite aufgeführt.

Weitere Informationen finden Sie unter Mitwirken an der SQL Server-Dokumentation.