Während ich dies schreibe, gibt es zwei Versionen von SQL Server, die auf einem Mac ausgeführt werden können:SQL Server 2017 und SQL Server 2019 Preview. In diesem Artikel wird erläutert, wie Sie beide auf einem Mac ausführen, damit sie gleichzeitig ausgeführt werden. Es ist nicht erforderlich, das eine zu deinstallieren, bevor Sie das andere installieren.
Der Schlüssel liegt darin, für jede Instanz eine andere TCP-Portnummer zu verwenden (der TCP-Port, dem die Container auf dem Hostcomputer zugeordnet sind). Wenn Sie dies nicht tun, erhalten Sie eine Fehlermeldung. SQL Server verwendet standardmäßig Port 1433, was für eine Ihrer Instanzen in Ordnung ist, aber nicht für beide. Daher müssen Sie dies für mindestens eine Ihrer Installationen ändern.
SQL Server herunterladen
Diese Anweisungen gehen davon aus, dass Docker auf Ihrem Mac installiert ist und ausgeführt wird. Sie benötigen Docker, um SQL Server auf Ihrem Mac auszuführen (es sei denn, Sie möchten es unter Windows über eine VM installieren, aber das tun wir hier nicht). Wenn Sie Docker nicht haben, gehen Sie zum Abschnitt „Detailed Instructions“ am Ende dieses Artikels.
Führen Sie den folgenden Befehl aus, um das neueste SQL Server 2017-Image herunterzuladen:
sudo docker pull mcr.microsoft.com/mssql/server:2017-latest
Um SQL Server 2019 Preview herunterzuladen, führen Sie den folgenden Befehl aus:
sudo docker pull mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu
Beachten Sie, dass dies zum Zeitpunkt des Schreibens die neueste Version ist. Das neueste Image finden Sie im offiziellen SQL Server-Repository auf der Docker-Website.
Führen Sie die Container aus
Nachdem beide Container-Images heruntergeladen wurden, führen Sie die folgenden Befehle aus:
sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=BigStrong#Pwd2017" -p 1401:1433 --name sql1 -d mcr.microsoft.com/mssql/server:2017-latest sudo docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=BigStrong#Pwd2019" -p 1402:1433 --name sql2 -d mcr.microsoft.com/mssql/server:2019-CTP3.2-ubuntu
Ändern Sie den Namen und das Passwort in Ihre eigenen. Wenn Sie eine andere Version verwenden, ändern Sie den Pfad entsprechend.
In diesem Fall erstelle ich einen SQL Server 2017-Container und einen SQL Server 2019-Container und weise sie den TCP-Ports 1401 und 1402 auf dem Hostcomputer zu. In beiden Fällen überwacht SQL Server Port 1433 im Container.
Das ist alles. Sie sollten jetzt SQL Server 2017 und SQL Server 2019 gleichzeitig auf Ihrem Mac ausführen!
Verbindung zu Ihren SQL Server-Instanzen herstellen
Sie müssen die Portnummer anhängen, wenn Sie eine Verbindung zu jeder Instanz herstellen. Hier ist ein Beispiel für die Verwendung des mssql-cli-Befehlszeilentools zum Herstellen einer Verbindung mit der SQL Server 2017-Instanz:
mssql-cli -S Localhost,1401 -U sa -P BigStrong#Pwd2017
Einige GUI-Tools haben möglicherweise ein separates Feld für den Port. Andernfalls sollten Sie denselben Localhost,1401 verwenden können formatieren.
Detaillierte Anleitung
Bei den obigen Anweisungen wird davon ausgegangen, dass Sie Docker auf Ihrem Mac haben und bereits über Kenntnisse zur Installation und Verbindung mit SQL Server auf einem Mac verfügen. Wenn nicht, sollten die folgenden zwei Artikel helfen.
-
Installieren Sie SQL Server (2017) auf einem Mac
Dieser Artikel zeigt, wie Sie SQL Server mit der Standardporteinstellung (1433:1433) installieren. Beinhaltet die Installation von Docker und die Verbindung mit SQL Server über eine Befehlszeilenschnittstelle sowie Links zu GUI-Tools.
- Dieser Artikel zeigt, wie Sie SQL Server unter Verwendung eines anderen Ports (1400:1433) installieren. Eigentlich beginnt es auf dem Standardport, zeigt Ihnen dann aber den Fehler, den Sie erhalten würden, wenn Sie versuchen, zwei Instanzen auf demselben Port auszuführen. Anschließend wird gezeigt, wie dieser Port geändert werden kann (genau wie im obigen Beispiel). Dieser Artikel enthält auch die Installation von Docker und die Verbindung mit SQL Server über eine Befehlszeilenschnittstelle sowie Links zu GUI-Tools.