Einführung
Da immer mehr neue Server unter Linux laufen und sogar ein Drittel der virtuellen Maschinen von Microsoft Azure unter Linux läuft, hat sich das Unternehmen entschlossen, SQL Server auf Linux zu bringen, um seinen Marktanteil zu erhöhen und neue Kunden zu gewinnen.
Microsoft hat begonnen, mit verschiedenen Produkten außerhalb von Windows-Umgebungen Fuß zu fassen, z. B. mit Office-365-Apps für verschiedene Mobiltelefon-Betriebssysteme wie iOS und Android sowie mit dem eigenen Windows Phone OS. Microsoft hat erklärt, dass sie einen SQL Server auf Ubuntu, Red Hat und SUSE bereitstellen wollen, der sich genauso anfühlt, aussieht und funktioniert wie die Windows-Version des SQL Servers, wobei die Benutzer nicht in der Lage sein sollten, die Unterschiede zwischen diesen zu sehen, zumindest aus der Front-End-Perspektive.
Das ist zu beachten
SQL Server unter Linux ist noch sehr neu, so dass es bei der Verwendung zu inkonsistentem Verhalten und teilweise unterstützten Funktionen kommen kann. Microsoft erklärte, dass die Vorschauversion von SQL Server auf Ubuntu, Red Hat, SUSE und Docker Engine die grundlegenden Funktionen wie die Kernkomponenten der Datenbank-Engine unterstützen wird, die Transaktionsverarbeitung und Data Warehousing unterstützen. Wie Microsoft in seinen Versionshinweisen für SQL Server unter Linux angibt, werden selbst in der neuesten Community Tech Preview 2.0 (CTP 2.0) noch viele Funktionen nicht unterstützt, so dass in diesem Bereich noch einiges zu tun ist. Nichtsdestotrotz ist es ein großer Schritt für Microsoft und einer, auf den sich viele DBAs gefreut haben.
Systemanforderungen
Microsoft hat nicht die vollständigen Systemanforderungen für die Installation von SQL Server auf Ubuntu, Red Hat, SUSE und Docker-Engine angegeben, das Einzige, was sie vermerkt haben, ist, dass mehr als 3,25 GB RAM erforderlich sind. Im Folgenden werden die grundlegenden Mindestanforderungen an die Systemhardware für Ubuntu aufgeführt, angepasst an die Anforderungen an RAM und Festplattenspeicher für die Ausführung von SQL Server unter Ubuntu:
CPU: 700Mhz Prozessor (Intel Celeron oder besser)
RAM: 4GB Minimum (Ubuntu benötigt mindestens 512MB)
HDD: 5GB für Ubuntu und zusätzlich mindestens 3GB für SQL Server
Installationsverfahren
SQL Server auf Linux unterstützt derzeit einige Linux-Distributionen, nämlich Red Hat, SUSE und Ubuntu, sowie die Docker-Engine.
In diesem Artikel werden wir SQL Server auf Ubuntu installieren, wobei die neueste Version zum Zeitpunkt des Schreibens dieses Artikels 17.04 ist.
-
Öffnen Sie zunächst Terminal, indem Sie mit der rechten Maustaste auf den Desktop klicken und Terminal öffnen auswählen.
Alternativ können Sie das Startmenü oben links öffnen und auf Terminal klicken, um es zu öffnen.
-
Nach dem Öffnen des Terminals werden wir mit einem Fenster begrüßt, das wie auf dem Bild unten aussieht.
-
Hier findet die Installation statt. Zuerst müssen wir die GPG-Schlüssel des öffentlichen Repositorys importieren, indem wir den folgenden Befehl eingeben:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
-
Der Benutzer muss das Passwort des Accounts eingeben, bevor er den Schritt abschließt.
-
Danach müssen wir das Ubuntu-Repository von Microsoft SQL Server registrieren lassen. Auch in diesem Schritt muss der Benutzer das Passwort des Kontos eingeben, bevor er den Schritt abschließen kann (allerdings nur, wenn seit der letzten Aktion 15 Minuten vergangen sind, da dies eine Funktion von Ubuntu ist, das Passwort nur einmal in 15 Minuten einzugeben, um den Arbeitsablauf zu erleichtern).
curl https://packages.microsoft.com/config/ubuntu/16.04/mssql-server.list | sudo tee /etc/apt/sources.list.d/mssql-server.list
-
Nun können wir SQL Server unter Ubuntu installieren, indem wir die folgenden Befehle eingeben:
sudo apt-get update
sudo apt-get install -y mssql-serverDamit ist das Paket installiert. Um SQL Server unter Ubuntu vollständig zu installieren, müssen wir das Setup mssql-conf ausführen und den Aufforderungen folgen. Außerdem wird ein sicheres Kennwort für die Erstellung des SA-Kontos empfohlen (Mindestlänge von 8 Zeichen, einschließlich Groß- und Kleinbuchstaben und Ziffern der Basis 10 oder/und nicht-alphanumerische Symbole). Um mit der Einrichtung fortzufahren, führen Sie den folgenden Befehl aus:
sudo /opt/mssql/bin/mssql-conf setup
-
Nachdem die Installation von SQL Server unter Ubuntu abgeschlossen ist, können wir überprüfen, ob der Dienst gestartet ist und läuft, indem wir den folgenden Befehl eingeben:
systemctl status mssql-server
-
Nach einiger Zeit wird möglicherweise ein Software-Update veröffentlicht und das kann mit ein paar Zeilen im Terminal erledigt werden. Zunächst müssen die apt-get-Repository-Listen aktualisiert werden, indem der folgende Befehl ausgeführt und das Passwort des Kontos eingegeben wird.
sudo apt-get update
sudo /opt/mssql/bin/mssql-conf setup -
Nach der Aktualisierung der Repository-Listen muss für die Aktualisierung des SQL-Servers nur noch der obige Installationsbefehl ausgeführt werden, der das Paket mssql-server aktualisiert:
sudo apt-get install mssql-server
Durch die Ausführung dieser Befehle wird versucht, das neueste Paket herunterzuladen und anschließend die aktualisierten Binärdateien zu ersetzen, die sich unter /opt/mssql befinden. Bei diesem Vorgang sind keine benutzergenerierten Datenbanken oder Systemdatenbanken betroffen.
Installation von SQL Server Tools
Optional können Benutzer die SQL Server Tools auf Ubuntu installieren, um ihre Erfahrung zu verbessern. Derzeit enthält das Paket das Befehlszeilen-Abfrageprogramm (sqlcmd) und das Bulk-Import-Export-Programm (bcp).
Die Installation erfolgt ebenfalls über das Terminal:
-
Zunächst müssen die GPG-Schlüssel des öffentlichen Repositorys importiert werden. Nach dem Ausführen dieses Befehls muss das Kontopasswort eingegeben werden.
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add –
-
Danach muss das Microsoft Ubuntu Repository registriert werden:
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
-
Aktualisieren Sie die Quellenliste und führen Sie den Installationsbefehl mit dem unixODBC-Entwicklerpaket aus:
sudo apt-get update
sudo apt-get install mssql-tools unixodbc-dev -
Nach der Ausführung des zweiten Befehls, wird der Benutzer aufgefordert, die Installation zuzulassen
-
Danach muss der Benutzer die Lizenzbedingungen akzeptieren
-
Damit die Befehle sqlcmd und bcp von der Bash-Shell aufgerufen werden können, PATH muss in ~/ geändert werden.bash_profile mit dem Befehl:
echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bash_profile
Für nicht angemeldete und interaktive Sitzungen muss der PATH entsprechend angepasst werden:
echo ‘export PATH=”$PATH:/opt/mssql-tools/bin”‘ >> ~/.bashrc
source ~/.bashrc -
Nach Abschluss der Installation wird eine Testdatenbank erstellt, um die Funktionalität des SQL Servers auf Ubuntu zu überprüfen.
-
Nach Abschluss des Prozesses wird das neueste SQL Server Management Studio, das auf einem Windows-Rechner installiert ist, gestartet. Da sich der Ubuntu-Rechner im lokalen Netzwerk befindet, lautet die IP-Adresse in diesem Fall 192.168.1.8. Nach dem Verbinden mit den SQL Server-Anmeldeinformationen (da die Windows-Authentifizierung in diesem Fall nicht funktioniert) kann man sehen, dass die Datenbank, die wir gerade mit dem Tool sqlcmd im Linux-Terminal erstellt haben, erstellt wurde und der Server erreichbar ist.
Installation von SQL Server Agent
Zusätzlich zu den SQL Server Tools kann auch der SQL Server Agent installiert werden, nachdem wir SQL Server auf Ubuntu installiert haben, um geplante Aufträge zu verwalten und auszuführen.
-
Aktualisieren Sie die Quellenliste und führen Sie den Installationsbefehl aus, woraufhin das Terminal zum Neustart des SQL Servers auffordert, damit der Agent starten kann.
sudo apt-get update
sudo apt-get install mssql-server-agent
sudo systemctl restart mssql-serverDanach zeigt die Verbindung zum Server in SSMS an, dass der SQL Server Agent läuft.
Fehlerbehebung
Problem
-
Kann keine Verbindung zum SQL Server unter Ubuntu von SSMS
Lösungen
-
Überprüfen Sie, ob der Server auf dem Ubuntu-Rechner ausgeführt wird, indem Sie den Befehl ausführen:
sudo systemctl status mssql-server
Wenn der Server nicht läuft, kann er durch Ausführen des folgenden Befehls gestartet werden:
sudo systemctl start mssql-server
Danach sollte das erneute Ausführen des vorherigen Befehls etwa so aussehen:
-
Überprüfen Sie, ob die Firewall den Port 1433 zugelassen hat, den SQL Server standardmäßig verwendet. Zunächst müssen wir den Status der ufw, der Uncomplicated Firewall von Ubuntu, überprüfen, indem wir den folgenden Befehl ausführen und das Passwort für das Konto eingeben:
sudo ufw status
-
Um einen Port durch die ufw zuzulassen, führen Sie den folgenden Befehl aus:
sudo ufw allow 1433
-
Problem
- Kann mit dem SA-Konto keine Verbindung zum Server herstellen
Lösung
-
Um das Passwort des Systemadministrators (SA) zurückzusetzen, führen Sie die folgenden Befehle aus:
sudo systemctl stop mssql-server
sudo /opt/mssql/bin/mssql-conf setupBeachten Sie, dass dadurch der SQL Server mssql-server-Dienst vorübergehend angehalten wird.
- Autor
- Recent Posts
Stefan arbeitet derzeit bei ApexSQL LLC als Software-Vertriebsingenieur, wo er sich auf die Bereiche Datenbankleistung und Backup spezialisiert hat.
- Wie man SQL Server auf Ubuntu installiert – 18. Mai 2017