Sneak Peek zum SQL Server auf Linux

Wie sicherlich schon allseits bekannt ist hat Microsoft in diesem Artikel hier angekündigt, dass es demnächst auch eine SQL Server Version unter Linux geben wird. Das hat natürlich in den sozialen Medien für ordentlich Zündstoff und Diskussionen gesorgt. Wer Interesse am SQL Server auf Linux hat kann sich hier für das Preview Programm anmelden.

Inzwischen gibt es auch schon einen ersten interessanten Artikel von Bob Dorr zu diesem Thema den man hier lesen kann. Im Artikel zeigt Bob wie man sich mit unterschiedlichen Tools am SQL Server unter Linux anmelden kann. Er greift mit dem SQL Server Management Studio, mit einem Linux ODBC Driver und mit Excel von OS X auf den Server zu und löst in jeder Anwendung einen Fehler aus den man dann in der Konsole sehen kann.

Auf Channel 9 gibt es ein Data Exposed Video in dem Scott Klein Tobias Ternstrom und Slava Oks zum SQL Server unter Linux interviewt und in dem auch schon eine erste öffentliche Live-Demo zu sehen ist.

Interessante Informationen die man aus dem Video bekommen kann sind, dass sich Microsoft momentan erst einmal darauf konzentriert die relationale Engine vom SQL Server auf Linux zu portieren. Im Video wird der SQL Server auf einer Ubuntu Distribution installiert.

SQLonLinux1

Hierzu wird der SQL Server über apt-get install mssql-server installiert. Das läuft im Video ziemlich zügig durch. Lustig finde ich auch die ASCII-Lizenzbestätigung 🙂

SQLonLinux2

Nachdem man die Lizenz angenommen hat muss man dann ein Kennwort für den Administrator-Account (sa) eingeben. Hier stellt sich mir die Frage ob der SQL Server unter Linux auch AD-Authentifizierung oder nur SQL Server Authentifizierung unterstützt. Ein Kennwort für den sa Account legt auf jeden Fall erstmal nahe, dass der im Video gezeigte SQL Server unter SQL-Authentifizierung läuft. Das kann man auch später sehen wenn sich Tobias über sqlcmd anmeldet.

SQLonLinux3

Nachdem der SQL Server (also die relationale Engine) installiert wurde müssen dann noch die SQL Server Tools über apt-get install mssql-server nachinstalliert werden. Hier wird wohl sqlcmd installiert über das dann in der Linux Shell mit dem SQL Server kommuniziert werden kann.

SQLonLinux5

Auch hier kommt wieder die lustige Lizenz-Abfrage, dieses Mal für die SQL Server Tools.

SQLonLinux6

Nachdem auch die Tools installiert sind kann man sich nun über sqlcmd -S127.0.0.1 -Usa anmelden.

SQLonLinux7

Über SELECT @@Version ist es dann möglich die SQL Server Version auszulesen.
SQLonLinux8

Das ist also tatsächlich ein SQL Server der in der Preview Version unter Linux, in diesem Fall Ubuntu 15.10 läuft. Im Rest des Videos wird noch eine Datenbank mit Namen “Scott” angelegt und von dieser Datenbank wird auch ein Backup gezogen. Im Gespräch werden weitere sehr interessante Details verraten. Da es sich beim SQL Server unter Linux ja um einen “echten” SQL Server handelt ist es gar kein Problem die Datenbankdateien (also .mdf und .ldf) auf einer Linux-Maschine abzukoppeln und dann auf einem SQL Server in der entsprechenden Version (im Video ist die Rede davon, dass es sich beim SQL Server unter Linux um eine SQL Server 2016 Version handelt) unter Windows wieder anhängen. Das funktioniert natürlich auch auf umgekehrtem Wege von Windows nach Linux aus. Gleiches gilt für Backup-Dateien. Backups die unter Linux erstellt wurden können unter Windows wiederhergestellt werden und umgekehrt. Im Screenshot kann man Datenbankdateien und Backup-Dateien auf dem Linux System sehen.

SQLonLinux9

Bis auf die Datei “Entropy.bin” sieht das alles ziemlich bekannt aus. Tobias und Slava betonen im Video auch, dass der SQL Server unter Linux ein “first class” Linux citizen wird, d.h. er wird sich genau wie andere Software die unter Linux erfolgreich ist verhalten, d.h. alles was der Linux Administrator kennt und gewohnt ist soll so wohl auch mit dem SQL Server funktionieren bis zum Scripten der Installation mit bestimmten Einstellungen, so wie es heutzutage unter Windows ja auch schon geht.

Auch wenn man in diesem Video jetzt noch nicht wirklich sehr viel vom SQL Server unter Linux sehen kann so gibt es auf jeden Fall schon mal einen kleinen Vorgeschmack. Gut finde ich, dass die Windows und die Linux Version untereinander kompatibel sein sollen, so dass der Umstieg von Windows auf Linux oder von Linux wieder zurück auf Windows nicht so schwer sein sollte. Das gilt aber momentan nur für die relationale Engine. Sobald diese portiert und komplett implementiert ist, ist auch angedacht andere Services wie die Reporting Services oder Analysis Services unter Linux zur Verfügung zu stellen. Alles in allem spannende Zeiten. Ich geh jetzt mal und installier mir ein Linux…;-)

5 thoughts on “Sneak Peek zum SQL Server auf Linux

  • Hallo Frank,

    erst einmal Danke für die ersten Einblicke zum SQL Server auf Linux.
    Ich frage mich auch, inwieweit eine AD Integration hier möglich sein wird. Inzwischen haben es ja doch viele geschafft von der SQL Authentifizierung weg zu kommen. Dies wäre meines Erachtens ein Rückschritt, wenn das dann auf einmal nicht mehr gehen sollte.
    Was auch mal spannend wäre herauszufinden: wird unter Linux so etwas wie die Instant File Initialization angeboten oder fällt das weg? In der Windows Welt muss ich hierfür ja dem ausführenden Dienstekonto die Berechtigung über eine Policy verpassen (Perform Volume Maintenance Tasks).
    Wie wird es sich mit Min und Max Memory verhalten unter Linux, bekommt der SQL Server ebenso seine Ressourcen und wie wird ein Linux damit umgehen, wenn es doch mal Memory Pressure geben sollte?

    Thema Interoperabilität wird auch spannend. Kann ich mir eine AG aufbauen und der Secondary ist dann ein Linux System? Oder Log Shipping? Immerhin gibt es hier ja diverse weitere Executables, welche unter bestimmten Credentials laufen müssen (womit wir wieder bei den Konten / AD Integration wären…).

    Gruß
    Dirk

    • Hallo Dirk!

      Vielen Dank für Deinen Kommentar. In der Tat sind das interessante Fragen die ich natürlich (und wahrscheinlich kaum jemand) momentan beantworten kann, zumal ich auch kein Linux Spezialist bin. Ich könnte mir schon vorstellen dass eine AD-Integration funktionieren kann. Soweit ich weiß gibt es ja unter Linux auch den Samba Server, den man sogar als AD Controller einrichten kann (steht in diesem Artikel). Ich stimme Dir aber zu, dass keine AD Authentifizierung definitiv ein Rückschritt wäre. Instant File Inizialisation ist auch so ein Thema wo ich wegen fehlender Linux Kenntnisse wenig zu sagen kann – sobald ich hier einen SQL Server unter Linux in die Finger bekomme werde ich das aber definitiv mal ausprobieren. Auf den Gedanken wie das denn mit der Interoperabilität zwischen Linux und Windows aussieht bin ich bisher noch gar nicht gekommen. Der Gedanke Windows und Linux Server zusammen in einer Always On Availibility Group zu haben (Failover Cluster Instance halte ich jetzt selbst bei sehr optimistischer Einstellung für nicht möglich wegen des zugrunde liegenden Windows Clusters – obwohl ab 2016 und Windows 2016 auch non-domain.joined Knoten gehen) ist ja auch sehr spannend. Ich vermute dass das, wenn es sich tatsächlich um einen vollwertigen SQL Server handel sollte, funktionieren sollte. Auch das werde ich testen sobald hier ein SQL auf Linux Server ankommt.

      Viele Grüße

      Frank

    • Hallo Dirk!

      Das kann ich sehr gut verstehen. Aber momentan gibt es ja auch noch nicht wirklich was zum Ausprobieren.

      Viele Grüße

      Frank

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

%d Bloggern gefällt das: