Übersicht
In diesem Handbuch sprechen wir über die Installation und Konfiguration einer SQL Server-Instanz und des sqlcmd
Befehlszeilen-Client. Wir erklären Ihnen, wie Sie diese Komponenten auf Ihrem Computer für den lokalen Zugriff installieren und einrichten.
Dieses Handbuch behandelt die folgenden Plattformen:
- Einrichten von SQL Server unter Windows
- Einrichten von SQL Server unter macOS (mit Docker)
- Einrichten von SQL Server unter Linux
- Ubuntu
- CentOS und Red Hat
- Mit Docker
Navigieren Sie zu den Abschnitten, die den Plattformen entsprechen, mit denen Sie arbeiten werden.
SQL Server unter Windows einrichten
Microsoft stellt auf seiner Website native Windows-Installationsprogramme für SQL Server bereit und bietet verschiedene Versionen von SQL Server an, die für unterschiedliche Zwecke geeignet sind. Für die Zwecke dieses Handbuchs werden wir die kostenlose Developer Edition herunterladen und installieren. Sie können ganz einfach von der Developer Edition auf eine kostenpflichtige Version upgraden, wenn Sie sie für die Produktion verwenden möchten.
Besuchen Sie zunächst die Microsoft-Seite für SQL Server. Suchen Sie den Abschnitt zur Developer Edition und klicken Sie auf Jetzt herunterladen :
Sobald der Download abgeschlossen ist, doppelklicken Sie auf die Datei, um das Installationsprogramm auszuführen (möglicherweise müssen Sie bestätigen, dass Sie dem Programm erlauben möchten, Änderungen an Ihrem Computer vorzunehmen).
Auf dem Startbildschirm des Installationsprogramms werden Sie aufgefordert, die Art der Installation auszuwählen, die Sie durchführen möchten:
Wählen Sie Einfach um mit einer herkömmlichen Installation unter Verwendung der gebräuchlichsten Optionen fortzufahren.
Als Nächstes werden Sie aufgefordert, den Lizenzbedingungen der Developer Edition zuzustimmen:
Wenn Sie die Lizenz gelesen haben und den Bedingungen zustimmen, klicken Sie auf Akzeptieren um fortzufahren.
Als nächstes bestätigen oder ändern Sie den Installationsort:
Wenn Sie fertig sind, klicken Sie auf Installieren um den Installationsvorgang zu starten.
Das Installationsprogramm beginnt mit dem Herunterladen und Installieren von Komponenten, um SQL Server auf Ihrem Computer einzurichten:
Wenn die Installation abgeschlossen ist, erscheint ein Bildschirm mit den aktuellen Installationseigenschaften:
Um sich sofort mit der neuen SQL Server-Instanz zu verbinden, klicken Sie auf Jetzt verbinden unten.
Ein neues Fenster wird Cmd
Das Fenster erscheint und meldet Sie automatisch bei der SQL Server-Instanz mit dem sqlcmd
an Kunde:
Wie in einem Kommentar oben im Fenster gezeigt, können Sie sich jederzeit manuell mit dem sqlcmd
mit SQL Server verbinden Client durch Eingabe von:
sqlcmd -S <yourhostname> -E
Um die aktuelle SQL-Sitzung zu beenden, geben Sie Folgendes ein:
EXIT
SQL Server auf macOS einrichten
Obwohl Microsoft kein natives Installationsprogramm für macOS bereitstellt, unterstützen sie die Ausführung von SQL Server auf macOS über Docker. Der Hauptcontainer von SQL Server Docker wird unter Verwendung eines Linux-Containers erstellt, sodass jeder Host, der Docker-Container ausführen kann, den Datenbankserver ausführen kann.
Sie benötigen mindestens 2 GB Arbeitsspeicher (wahrscheinlich mindestens etwas mehr), um das Image erfolgreich auszuführen, Docker selbst benötigt jedoch mindestens 4 GB Arbeitsspeicher.
Stellen Sie zunächst sicher, dass Docker auf Ihrem System installiert ist. Docker Desktop für Mac enthält Docker Engine und andere verwandte Anwendungen. Wenn Sie Docker noch nicht installiert haben, befolgen Sie die Anweisungen im obigen Link.
Sobald Sie Docker eingerichtet und ausgeführt haben, können Sie das SQL Server-Docker-Image aus Microsoft Container Registry abrufen, indem Sie Folgendes eingeben:
docker pull mcr.microsoft.com/mssql/server:2019-latest
Dadurch werden alle erforderlichen Bildebenen auf Ihr lokales System heruntergeladen, was einen schnelleren Start ermöglicht.
Wenn Sie bereit sind, den Container zu starten, geben Sie den folgenden Befehl ein.
Denken Sie daran, <password>
zu ersetzen mit dem Wert Ihres beabsichtigten Passworts und wählen Sie einen Wert, der der Passwortrichtlinie des Bildes entspricht. Zum Zeitpunkt der Erstellung dieses Artikels ist die Richtlinie wie folgt definiert:„Das Passwort muss mindestens 8 Zeichen lang sein und Zeichen aus drei der folgenden vier Gruppen enthalten:Großbuchstaben, Kleinbuchstaben, Basis-10-Ziffern und Symbole.“:
docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest
Der SQL-Server-Container wird im Hintergrund gestartet. Die angezeigte Zeichenfolge ist die ID des neuen Containers.
Sie können überprüfen, ob der Container betriebsbereit ist, indem Sie Folgendes eingeben:
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESffa9ef357b5c mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/perm…" 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp mssqlae00765e36fb hello-world "/hello" 24 minutes ago Exited (0) 24 minutes ago dreamy_swanson
Sie sollten mssql
sehen Container in der Liste. Wenn der Container nicht ausgeführt wird oder Sie Probleme haben, können Sie versuchen, seine Protokolle anzuzeigen, um festzustellen, ob hilfreiche Nachrichten vorhanden sind:
docker logs mssql
Auf dem SQL Server-Container ist nicht nur der Datenbankserver installiert, er verfügt auch über einige der gängigen Tools, einschließlich sqlcmd
Befehlszeilen-Client. Um diesen Client zum Verbinden mit der Datenbankinstanz zu verwenden, können Sie docker exec
verwenden um auf den Befehl zuzugreifen und sich bei der Datenbank zu authentifizieren:
docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Sie werden beim SQL Server innerhalb des Containers authentifiziert und in eine SQL-Shell verschoben. Sie können überprüfen, ob alles funktioniert, indem Sie Folgendes eingeben:
SELECT @@VERSION;GO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64> (1 rows affected)
Geben Sie Folgendes ein, um die SQL-Sitzung zu beenden und zu Ihrer normalen Shell zurückzukehren:
EXIT
Um den SQL Server-Container zu beenden, wenn Sie fertig sind, können Sie ihn stoppen, indem Sie Folgendes eingeben:
docker stop mssql
Geben Sie Folgendes ein, um die Containerinstanz (einschließlich aller darin enthaltenen Daten!) zu entfernen:
docker rm mssql
Um die Daten in Ihrem SQL Server-Container zu speichern, können Sie eine der in der Microsoft-Dokumentation beschriebenen Techniken verwenden oder einen Blick auf die Docker-eigene Dokumentation zur Verwendung von Datenvolumes mit Containern werfen.
SQL Server unter Linux einrichten
Die Installationsmethoden unterscheiden sich je nach verwendeter Linux-Distribution. Befolgen Sie den Abschnitt unten, der Ihrer Linux-Distribution entspricht. Es gibt auch Anweisungen zur Verwendung von Docker, wenn Sie diese Konfiguration bevorzugen oder eine nicht aufgeführte Distribution verwenden möchten.
- Ubuntu
- CentOS und Red Hat
- Mit Docker
Ubuntu
Der einfachste Weg, SQL Server unter Ubuntu 20.04 zu installieren, ist die Installation aus den von Microsoft bereitgestellten dedizierten Repositories. Ihr Computer muss über mindestens 2 GB Arbeitsspeicher verfügen, um die erforderliche Software erfolgreich installieren und ausführen zu können.
Fügen Sie Ihrem System zunächst eine neue Repository-Definition hinzu, indem Sie Folgendes eingeben:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/18.04/mssql-server-2019.list)"
Sie müssen auch ein separates Repository hinzufügen, um Zugriff auf sqlcmd
zu erhalten binäre und andere Tools:
sudo add-apt-repository "$(wget --quiet -O - https://packages.microsoft.com/config/ubuntu/20.04/prod.list)"
Fügen Sie als Nächstes den Microsoft-Paketsignaturschlüssel zu apt
hinzu damit es den Paketen im neuen Repository vertraut:
wget --quiet -O - https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
Wenn das Repository eingerichtet ist, können Sie SQL Server und sqlcmd
installieren Befehlszeilen-Client durch Eingabe von:
sudo apt install mssql-server mssql-tools unixodbc-dev
Nach Abschluss der Installation müssen Sie Ihre neue Datenbankinstanz konfigurieren. Führen Sie dazu das enthaltene mssql-conf setup
aus Skript, um einige der grundlegenden Eigenschaften Ihres neuen Systems festzulegen:
sudo /opt/mssql/bin/mssql-conf setup
Ihnen werden eine Reihe von Fragen gestellt, um den Datenbankserver zu konfigurieren.
Zuerst werden Sie gefragt, welche Edition von SQL Server Sie verwenden möchten:
Choose an edition of SQL Server: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded 7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum 8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):
Wenn Sie eine kostenpflichtige Lizenz haben, können Sie die entsprechende Version auswählen. Wenn Sie den Server in einer Nicht-Produktionsumgebung verwenden, ist es sicher, die Developer Edition zu wählen.
Als Nächstes müssen Sie die Lizenzbedingungen erneut akzeptieren:
The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:
Schließlich müssen Sie ein Kennwort für das SQL Server-Systemadministratorkonto (an vielen Stellen SA-Konto genannt) festlegen und bestätigen:
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
So verwenden Sie sqlcmd
Client zum Herstellen einer Verbindung mit Ihrer SQL Server-Instanz ist es am einfachsten, die mssql-tools
hinzuzufügen Binary-Verzeichnis zu Ihrem PATH
. Um dies zu konfigurieren, geben Sie Folgendes ein:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Resourcen Sie anschließend eine der beiden obigen Dateien, um den neuen PATH
auszuwerten für Ihre aktuelle Sitzung:
source ~/.bashrc
Sie können sich jetzt mit Ihrer Datenbankinstanz verbinden, indem Sie Folgendes eingeben:
sqlcmd -U SA -S 127.0.0.1
Sie werden nach dem Passwort gefragt, das Sie zuvor eingerichtet haben. Nach erfolgreicher Authentifizierung werden Sie in eine SQL-Shell versetzt. Von hier aus können Sie überprüfen, ob alles funktioniert, indem Sie die Version des Servers drucken:
SELECT @@VERSIONGO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 20.04.2 LTS) <X64> (1 rows affected)
Um die SQL-Shell zu verlassen und zur Befehlszeile zurückzukehren, können Sie Folgendes eingeben:
EXIT
CentOS und Red Hat
Der einfachste Weg, SQL Server auf CentOS oder Red Hat zu installieren, ist die Verwendung der von Microsoft bereitgestellten Repositories. Linux-Hosts müssen über mindestens 2 GB Arbeitsspeicher verfügen, um SQL Server installieren und ausführen zu können.
Vor der Installation von SQL Server müssen Sie dessen Abhängigkeiten installieren und konfigurieren. Wir brauchen sowohl Python 2 als auch OpenSSL 10, um fortzufahren:
sudo yum install python2 compat-openssl10
Konfigurieren Sie nach der Installation von Python 2 das System so, dass es als Standard-Python-Instanz verwendet wird:
sudo alternatives --config python
Wählen Sie aus der folgenden Liste die Nummer aus, die der Installation von Python 2 zugeordnet ist. Im folgenden Beispiel ist dies Option 2:
There are 2 programs which provide 'python'. Selection Command ----------------------------------------------- *+ 1 /usr/libexec/no-python 2 /usr/bin/python2 Enter to keep the current selection[+], or type selection number: 2
Nachdem die Abhängigkeiten vorhanden sind, können Sie jetzt das YUM-Repository von SQL Server konfigurieren:
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/mssql-server-2019.repo
Anschließend müssen Sie ein zusätzliches Repository konfigurieren, um Zugriff auf sqlcmd
zu erhalten und andere Tools:
sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/$(rpm --eval %{rhel})/prod.repo
Sobald die Repositorys konfiguriert sind, installieren Sie SQL Server, indem Sie Folgendes eingeben:
sudo yum install mssql-server mssql-tools unixODBC-devel
Nach Abschluss der Installation müssen Sie Ihre neue Datenbankinstanz konfigurieren. Führen Sie dazu das enthaltene mssql-conf setup
aus Skript, um einige der grundlegenden Eigenschaften Ihres neuen Systems festzulegen:
sudo /opt/mssql/bin/mssql-conf setup
Ihnen werden eine Reihe von Fragen gestellt, um den Datenbankserver zu konfigurieren.
Zuerst werden Sie gefragt, welche Edition von SQL Server Sie verwenden möchten:
Choose an edition of SQL Server: 1) Evaluation (free, no production use rights, 180-day limit) 2) Developer (free, no production use rights) 3) Express (free) 4) Web (PAID) 5) Standard (PAID) 6) Enterprise (PAID) - CPU Core utilization restricted to 20 physical/40 hyperthreaded 7) Enterprise Core (PAID) - CPU Core utilization up to Operating System Maximum 8) I bought a license through a retail sales channel and have a product key to enter.Details about editions can be found athttps://go.microsoft.com/fwlink/?LinkId=2109348&clcid=0x409Use of PAID editions of this software requires separate licensing through aMicrosoft Volume Licensing program.By choosing a PAID edition, you are verifying that you have the appropriatenumber of licenses in place to install and run this software.Enter your edition(1-8):
Wenn Sie eine kostenpflichtige Lizenz haben, können Sie die entsprechende Version auswählen. Wenn Sie den Server in einer Nicht-Produktionsumgebung verwenden, ist es sicher, die Developer Edition zu wählen.
Als Nächstes müssen Sie die Lizenzbedingungen erneut akzeptieren:
The license terms for this product can be found in/usr/share/doc/mssql-server or downloaded from:https://go.microsoft.com/fwlink/?LinkId=2104294&clcid=0x409The privacy statement can be viewed at:https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409Do you accept the license terms? [Yes/No]:
Schließlich müssen Sie ein Kennwort für das SQL Server-Systemadministratorkonto (an vielen Stellen SA-Konto genannt) festlegen und bestätigen:
Enter the SQL Server system administrator password:Confirm the SQL Server system administrator password:
So verwenden Sie sqlcmd
Client zum Herstellen einer Verbindung mit Ihrer SQL Server-Instanz ist es am einfachsten, die mssql-tools
hinzuzufügen Binary-Verzeichnis zu Ihrem PATH
. Um dies zu konfigurieren, geben Sie Folgendes ein:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrcecho 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
Resourcen Sie anschließend eine der beiden obigen Dateien, um den neuen PATH
auszuwerten für Ihre aktuelle Sitzung:
source ~/.bashrc
Sie können sich jetzt mit Ihrer Datenbankinstanz verbinden, indem Sie Folgendes eingeben:
sqlcmd -U SA -S 127.0.0.1
Sie werden nach dem Passwort gefragt, das Sie zuvor eingerichtet haben. Nach erfolgreicher Authentifizierung werden Sie in eine SQL-Shell versetzt. Von hier aus können Sie überprüfen, ob alles funktioniert, indem Sie die Version des Servers drucken:
SELECT @@VERSIONGO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (CentOS Linux 8) <X64> (1 rows affected)
Um die SQL-Shell zu verlassen und zur Befehlszeile zurückzukehren, können Sie Folgendes eingeben:
EXIT
Mit Docker
Wenn Sie eine Linux-Distribution verwenden, für die Microsoft keine Pakete bereitstellt, oder wenn Sie es einfach vorziehen, besteht eine weitere Option darin, SQL Server mit Docker auszuführen. Sie benötigen mindestens 2 GB Arbeitsspeicher (wahrscheinlich mindestens etwas mehr), um das Image erfolgreich auszuführen.
Stellen Sie zunächst sicher, dass Sie die Docker Engine auf Ihrem System haben. Detaillierte Anweisungen für verschiedene Plattformen finden Sie in der Docker Engine-Dokumentation.
Sobald Sie Docker eingerichtet und ausgeführt haben, können Sie das SQL Server-Docker-Image aus Microsoft Container Registry abrufen, indem Sie Folgendes eingeben:
sudo docker pull mcr.microsoft.com/mssql/server:2019-latest
Dadurch werden alle erforderlichen Bildebenen auf Ihr lokales System heruntergeladen, was einen schnelleren Start ermöglicht.
Wenn Sie bereit sind, den Container zu starten, geben Sie den folgenden Befehl ein.
Denken Sie daran, <password>
zu ersetzen mit dem Wert Ihres beabsichtigten Passworts und wählen Sie einen Wert, der der Passwortrichtlinie des Bildes entspricht. Zum Zeitpunkt der Erstellung dieses Artikels ist die Richtlinie wie folgt definiert:„Das Passwort muss mindestens 8 Zeichen lang sein und Zeichen aus drei der folgenden vier Gruppen enthalten:Großbuchstaben, Kleinbuchstaben, Basis-10-Ziffern und Symbole.“:
sudo docker run --env "ACCEPT_EULA=Y" --env "SA_PASSWORD=<password>" --publish 1433:1433 --name mssql --hostname mssql --detach mcr.microsoft.com/mssql/server:2019-latest
Der SQL-Server-Container wird im Hintergrund gestartet. Die angezeigte Zeichenfolge ist die ID des neuen Containers.
Sie können überprüfen, ob der Container betriebsbereit ist, indem Sie Folgendes eingeben:
sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESffa9ef357b5c mcr.microsoft.com/mssql/server:2019-latest "/opt/mssql/bin/perm…" 2 minutes ago Up 2 minutes 0.0.0.0:1433->1433/tcp mssqlae00765e36fb hello-world "/hello" 24 minutes ago Exited (0) 24 minutes ago dreamy_swanson
Sie sollten mssql
sehen Container in der Liste. Wenn der Container nicht ausgeführt wird oder Sie Probleme haben, können Sie versuchen, seine Protokolle anzuzeigen, um festzustellen, ob hilfreiche Nachrichten vorhanden sind:
sudo docker logs mssql
Auf dem SQL Server-Container ist nicht nur der Datenbankserver installiert, er verfügt auch über einige der gängigen Tools, einschließlich sqlcmd
Befehlszeilen-Client. Um diesen Client zum Verbinden mit der Datenbankinstanz zu verwenden, können Sie docker exec
verwenden um auf den Befehl zuzugreifen und sich bei der Datenbank zu authentifizieren:
sudo docker exec --interactive --tty mssql /opt/mssql-tools/bin/sqlcmd -U SA -S 127.0.0.1 -P "<password>"
Sie werden beim SQL Server innerhalb des Containers authentifiziert und in eine SQL-Shell verschoben. Sie können überprüfen, ob alles funktioniert, indem Sie Folgendes eingeben:
SELECT @@VERSION;GO
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Microsoft SQL Server 2019 (RTM-CU9) (KB5000642) - 15.0.4102.2 (X64) Jan 25 2021 20:16:12 Copyright (C) 2019 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 18.04.5 LTS) <X64> (1 rows affected)
Geben Sie Folgendes ein, um die SQL-Sitzung zu beenden und zu Ihrer normalen Shell zurückzukehren:
EXIT
Um den SQL Server-Container zu beenden, wenn Sie fertig sind, können Sie ihn stoppen, indem Sie Folgendes eingeben:
sudo docker stop mssql
Geben Sie Folgendes ein, um die Containerinstanz (einschließlich aller darin enthaltenen Daten!) zu entfernen:
sudo docker rm mssql
Um die Daten in Ihrem SQL Server-Container zu speichern, können Sie eine der in der Microsoft-Dokumentation beschriebenen Techniken verwenden oder einen Blick auf die Docker-eigene Dokumentation zur Verwendung von Datenvolumes mit Containern werfen.