Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So installieren Sie SQL Server auf einem M1-Mac (ARM64)

Ich habe zuvor erklärt, wie man SQL Server auf einem Mac mit dem Docker-Image von SQL Server für Linux installiert.

Seitdem hat Apple seinen M1-Chip herausgebracht, der die ARM-Architektur verwendet. Dies kann ein Problem verursachen, wenn Sie versuchen, SQL Server zu installieren. Das Problem ist, dass SQL Server zum Zeitpunkt des Schreibens nicht auf der ARM-Architektur unterstützt wird.

Glücklicherweise gibt es eine Alternative.

Das Container-Image für Azure SQL Edge kann auf dem M1-Mac installiert werden. Daher können wir dieses Image anstelle des SQL Server-Images verwenden.

Azure SQL Edge ist eine optimierte relationale Datenbank-Engine, die auf IoT- und IoT Edge-Bereitstellungen ausgerichtet ist. Es basiert auf den neuesten Versionen der SQL Server-Datenbank-Engine, sodass Sie T-SQL-Code genauso verwenden können, wie Sie es bei der Verwendung von SQL Server tun würden. Sie können auch dieselben Tools zum Abfragen von Azure SQL Edge verwenden, die Sie mit SQL Server verwenden würden (z. B. SSMS, Azure Data Studio usw.).

In diesem Artikel installiere ich die Developer Edition von Azure SQL Edge auf einem Mac mit M1-Chip.

Docker installieren

Da wir SQL Edge über einen Docker-Container installieren, muss Docker installiert sein.

Wenn Sie Docker noch nicht haben, laden Sie es herunter und installieren Sie es wie folgt:

  1. Laden Sie Docker von der Docker-Website herunter. Stellen Sie sicher, dass Sie die für den M1 Mac herunterladen (die Schaltfläche hieß Mac with Apple Chip als ich es heruntergeladen habe).
  2. Öffnen Sie nach dem Herunterladen die Datei .dmg Datei und ziehen Sie das Docker.app-Symbol wie angegeben in Ihren Anwendungsordner.
  3. Starten Sie Docker genauso wie jede andere Anwendung (z. B. über den Anwendungsordner, das Launchpad usw.). Wenn Sie Docker öffnen, werden Sie möglicherweise nach Ihrem Passwort gefragt. Fahren Sie fort und geben Sie Ihr Passwort ein, da Docker dieses zum Ausführen benötigt.

Installieren Sie Azure SQL Edge

Nachdem Docker nun installiert ist, können wir fortfahren und Azure SQL Edge installieren. Wie bereits erwähnt, verwendet dies die SQL Server-Datenbank-Engine, und wir können sie daher verwenden, um T-SQL-Abfragen usw. auszuführen, als ob wir SQL Server abfragen würden.

Öffnen Sie ein Terminalfenster und führen Sie den folgenden Befehl aus:

docker pull mcr.microsoft.com/azure-sql-edge

Dadurch wird das Container-Image auf Ihren lokalen Computer gezogen/heruntergeladen.

Sie können alternativ die Containeroptionen auf der Docker-Website überprüfen, wenn Sie dies bevorzugen.

Führen Sie nach Abschluss des Downloads den folgenden Befehl aus, um eine Instanz des soeben heruntergeladenen Docker-Images zu starten:

sudo docker run --cap-add SYS_PTRACE -e 'ACCEPT_EULA=1' -e 'MSSQL_SA_PASSWORD=bigStrongPwd' -p 1433:1433 --name sqledge -d mcr.microsoft.com/azure-sql-edge

Achten Sie darauf, bigStrongPwd zu ändern zu einem starken Passwort Ihrer Wahl. Sie können auch den Wert von --name ändern Parameter, wenn Sie möchten.

Standardmäßig wird der Container mit der Developer Edition ausgeführt. Sie können die Premium Edition ausführen, indem Sie -e 'MSSQL_PID=Premium' hinzufügen .

Überprüfen Sie den Docker-Container

Wir können den folgenden Befehl verwenden, um zu überprüfen, ob der Container betriebsbereit ist:

docker ps

Ergebnis:

a190dd199b17   mcr.microsoft.com/azure-sql-edge   "/opt/mssql/bin/perm…"   10 seconds ago   Up 9 seconds   1401/tcp, 0.0.0.0:1433->1433/tcp   sqledge

Dies zeigt mir, dass der Container tatsächlich betriebsbereit ist.

Wenn Ihr Container aus irgendeinem Grund nicht betriebsbereit ist, versuchen Sie den folgenden Befehl:

docker start sqledge

Ersetzen Sie sqledge mit dem Namen Ihres Containers.

Nachdem der Container ausgeführt wurde, können wir jetzt fortfahren und eine Verbindung zu SQL Edge herstellen.

Mit SQL Edge verbinden

Sie können jetzt eine Verbindung zu Ihrer Azure SQL Edge-Installation herstellen, indem Sie die beim Starten des Docker-Image bereitgestellten Details verwenden.

Hier ist ein Screenshot der Verbindung mit Azure SQL Edge über Azure Data Studio:

So installieren Sie Azure Data Studio auf einem Mac.

Microsoft gibt an, dass Azure Data Studio „derzeit die ARM-Architektur nicht unterstützt“, aber ich hatte kein Problem damit, es auf meinem M1-Mac (d. h. mit ARM-Architektur) zu installieren.

SQL-Abfragen ausführen

Sobald Sie mit SQL Edge verbunden sind, können Sie Datenbanken erstellen, T-SQL-Abfragen ausführen usw. (T-SQL ist die SQL-Erweiterung von SQL Server).

Sehen Sie sich mein SQL-Tutorial an, um sich mit der Ausführung von SQL-Abfragen vertraut zu machen.

Unterstützte Funktionen in SQL Edge

Ich sollte erwähnen, dass einige SQL Server-Funktionen in SQL Edge nicht unterstützt werden. Azure SQL Edge unterstützt eine Teilmenge der Funktionen, die von SQL Server 2019 unter Linux unterstützt werden.

Allerdings verfügt SQL Edge über einige Funktionen, die in SQL Server nicht verfügbar sind (z. B. DATE_BUCKET() Funktion).

Eine vollständige Aufschlüsselung finden Sie unter Unterstützte Funktionen von Azure SQL Edge auf der Microsoft-Website.