Wie installiere ich MS SQL für Ubuntu 18.04 LTS?

8

Ich habe im Internet nachgeschlagen, aber alle zu installierenden Schritte betrafen die Version 16.04. Ist es schon am 18.04 verfügbar? Wenn ja, wie?

Siddharth Pandey
quelle
1
Ich habe mir ihre Repositories angesehen und es sieht so aus, als hätten sie im Moment nur ein paar Bibliotheken in den Repositories vom 18.04. Das bedeutet wahrscheinlich, dass sie gerade an der Erstellung von Paketen arbeiten, aber noch nicht mit allem fertig sind.
5.
1
Beim Versuch, mssql-server unter Ubuntu 18.04 zu installieren, wird eine Fehlermeldung angezeigt, The following packages have unmet dependencies: mssql-server : Depends: openssl (<= 1.1.0)sodass es nicht sofort verfügbar ist. Schauen Sie sich die Antwort von David Mortals unten an.
NaXa
Siehe auch
Unhammer

Antworten:

9

Microsoft bietet noch keinen offiziellen mssql-Server für den 18.04. (05-12-2018) an. Nur zum Testen können Sie diese Problemumgehung (von mir) ausprobieren .

Problemumgehung für die Installation von Microsoft SQL Server (mssql) unter Ubuntu

WARNUNG: NUR ZUR PRÜFUNG

  1. Laden Sie das neueste Paket mssql-server_14.0.3025.34-3_amd64.deb von https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017/pool/main/m/mssql-server/ herunter.

  2. Verzeichnisse ändern

    cd ${HOME} && mkdir -p tmp/mssql/newpkg/DEBIAN/ && cd tmp/mssql
    wget https://packages.microsoft.com/ubuntu/16.04/mssql-server-2017/pool/main/m/mssql-server/mssql-server_14.0.3025.34-3_amd64.deb
    
  3. Auspacken

    dpkg-deb -x mssql-server_14.0.3025.34-3_amd64.deb newpkg/
    dpkg-deb -e mssql-server_14.0.3025.34-3_amd64.deb newpkg/DEBIAN/
    
  4. Ändern

    sed -i -e 's#openssl (<= 1.1.0)#openssl (<= 1.1.1)#g' newpkg/DEBIAN/control
    cat newpkg/DEBIAN/control | grep openssl
    
  5. Umpacken

    dpkg-deb -b newpkg/ 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  6. Versuchen Sie zunächst, dies schlägt für Abhängigkeiten fehl

    sudo dpkg -i 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  7. Abhängigkeiten installieren

    sudo apt install -f
    
  8. Zweiter Versuch, dies sollte getan werden

    sudo dpkg -i 18.04-mssql-server_14.0.3025.34-3_amd64_.deb
    
  9. Folgen Sie den Nachrichten aus dem Paket, um den MSSQL-Server einzurichten

Fehlerbehebung

Das Datenbankverzeichnis /var/opt/mssqlsollte nicht in das zfs-Dataset aufgenommen werden. Wenn Sie zfs verwenden, erstellen Sie ein zvol und formatieren Sie es als ext4 / xfs.

Fehler: "Dump-Sammelthread [4404] hat Ausnahme [6] getroffen. Beenden."
Fix: sudo usermod -a -G disk mssql
Grund: mssql Benutzer kann nicht auf zvol zugreifen.

Verweise:

David Mortals
quelle
Ich musste auch libcurl3 in den Abhängigkeiten in Schritt 4 in libcurl4 ändern (PHP7 verwendet V4 und es scheint mit MSSql-Server zu funktionieren).
Mike
5

Die Versionen von ca-certificatesund opensslvon Ubuntu 18.04 funktionieren also einwandfrei mssql-server. Vermutlich wird es abgelehnt, opensshweil die Version von 18.04 1.1.0g-2ubuntu4technisch "höher" ist als mssql-servergefordert <=1.1.0(und ich denke, sie hätte verwendet werden sollen, <1.1.1da dies Sie immer noch an eine 1.1.0Variante bindet und verteilungsspezifische Paketversionen zulässt, die Sie unbedingt erwarten sollten zu treffen, aber das ist weder hier noch da.)

Die Reparatur

  1. Abhängigkeiten installieren
    sudo apt-get install libunwind8 libnuma1 libc6 adduser libjemalloc1 libc ++ 1 gdb debconf libcurl3 hostname openssl python libgssapi-krb5-2 libsss-nss-idmap0 gawk sed
    (Mir ist völlig klar, dass Sie wahrscheinlich die meisten davon bereits installiert haben. Dies sind nur alle beanspruchten Abhängigkeiten.)
  2. Laden Sie das Paket herunter
    apt-get download mssql-server
  3. Installation erzwingen
    sudo dpkg --force-abhängig -i mssql-server_14.0.3025.34-3.deb
  4. Entfernen Sie die heruntergeladene .deb-Datei
    rm mssql-server_14.0.3025.34-3_amd64.deb
  5. Wenn Sie zu diesem Zeitpunkt einen apt-Befehl ausführen, wird dies (harmlos) dazu führen, dass Sie sich beschweren, dass der mssql-Server nicht erfüllte Abhängigkeiten aufweist, und Sie anweisen, Folgendes auszuführen: TUN sudo apt --fix-broken install
    SIE DAS NICHT. Sie werden alles verlieren, was Sie gerade getan haben.

    Wenn Sie wirklich möchten, dass dieser Fehler behoben wird, fahren Sie mit Schritt 5 fort. Andernfalls ignorieren Sie ihn einfach und Sie sind fertig.

  6. Überzeugen Sie dpkg, dass alles in Ordnung ist
    1. sudo nano /var/lib/dpkg/status
       Ihr bevorzugter Editor ist auch in Ordnung
    2. Suchen Sie den Eintrag für mssql-server (für nano ist es Strg-W, nicht Strg-F)
    3. Ändern Sie die abhängige Zeile von

      ...hostname, openssl (>= 1.0.1), openssl (<= 1.1.0), python (<= 2.7.0)...

      nach

      ...hostname, openssl (>= 1.0.1), openssl (< 1.1.1), python (<= 2.7.0)...

Wenn Sie die alten Versionen von ca-certificatesund zwangsweise installiert haben openssl, um sie mssql-serverzu installieren, können Sie sie zwangsweise aktualisieren apt-get install ca-certificates openssl. Dadurch wird der mssql-Server entfernt (Ihre Konfiguration und Datenbanken sollten jedoch in Ruhe gelassen werden). Dann können Sie meinen Anweisungen folgen.

Dies sollte vermeiden, dass Sie sich mit dem Aufwand des Umpackens von Dingen befassen müssen. Sie sind der Handel , dass für Tricks auf dpkg zu spielen , aber es auf diese Weise tun , wird wahrscheinlich (ich gebe zu, das auf keiner Forschung basiert) machen es einfacher zu aktualisieren , wenn ein offizielles 18.04 Paket kommt , da Sie vermeiden das Erstellen und Verwenden eines inoffiziellen Paket und ein Upgrade auf Ein offizielles Paket würde die Änderungen, die wir vorgenommen haben, automatisch bereinigen.

Elijah Woodward
quelle
2

Die SQL-Website von Micrsoft wurde zuletzt im April 2018 aktualisiert und zeigt Ubuntu 16.04 als die derzeit am meisten unterstützte Version. Ich würde bis zum 26. Juli 2018 warten, wenn Ubuntu 18.04.1 LTS veröffentlicht wird, um Unterstützung von Microsoft zu erwarten.

Anstatt für Microsoft SQL zu bezahlen, können Sie auch die kostenlose Version von MySQL ausprobieren, die Ubuntu 18.04 bereits unterstützt.

WinEunuuchs2Unix
quelle
MySQL und andere Open Source-Datenbanken sind bereits in den Ubuntu-Repositorys enthalten, sodass Sie sie nicht an anderer Stelle herunterladen müssen, es sei denn, Sie benötigen eine bestimmte Version.
5.
@JanC Ich habe die Website des Herstellers hervorgehoben, um Informationen zur Verfügbarkeit von MySQL für den 18.04. Zu erhalten. Vielen Dank für den Installationstipp, von dem alle profitieren.
WinEunuuchs2Unix
2
Wenn Sie MSSQL benötigen, weil andere von Ihnen verwendete Software davon abhängt, hilft Ihnen die Installation von MySQL nicht weiter.
Craig
0

Wenn Sie Ubuntu 18.10 verwenden, müssen Sie die Antwort von David Mortals leicht überarbeiten, indem Sie Schritt 4 Folgendes hinzufügen:

sed -i -e 's#libjemalloc1#libjemalloc2#g' newpkg/DEBIAN/control

Dies setzt voraus, dass libjemalloc2es abwärtskompatibel ist libjemalloc1und auf meinem Entwicklungscomputer bisher anscheinend einwandfrei funktioniert.

Dylan Smith
quelle