Installieren Sie MySQL 5.6 unter Ubuntu 18.04 LTS

11

Ich kann mySql 5.6 nicht auf meinem neu installierten Ubuntu 18.04 installieren . Ich habe versucht, Lösung von vielen Links ( Link1 Link2 ...), aber überhaupt kein Erfolg.

Ich habe 5.7 installiert, aber aufgrund der Anforderungen des Kunden muss ich es trotzdem tun. Es gibt nur wenige Änderungen , die es mit 5.6 inkompatibel machen, ohne Änderungen am Code in etwa 5 laufenden Projekten (7 beteiligte Entwickler) vorzunehmen, die gestartet wurden, als ich Ubuntu 17.10 mit MySQL 5.6 verwendete .

UPDATE: Ahmed hat einen manuellen Ansatz vorgeschlagen, der eine gute Lösung ist, aber ich wünschte, jemand weiß, wie Ubuntu es richtig macht, damit mehr Menschen davon profitieren.

Purushotam Sangroula
quelle
Haben Sie eine andere Version von MySQL, die derzeit installiert ist? Benötigen Sie speziell 5.6? 5.7 ist in den Standard-Repos verfügbar.
Valiano
@valiano, ich habe 5.7 installiert, aber aufgrund der Anforderungen des Kunden muss ich es trotzdem tun. Es gibt nur wenige Änderungen, die es inkompatibel machen, ohne dass Codeänderungen bei mehr als 5 am Projekt beteiligten Entwicklern vorgenommen werden müssen.
Purushotam Sangroula
Hast du das versucht? askubuntu.com/questions/792571/…
Valiano
@valiano diese Antwort ist derzeit nicht zutreffend. Ich habe es versucht.
Purushotam Sangroula
Haben Sie benötigen MySQL, oder können Sie leben mit MariaDB, das ist 100% kompatibel mit allen vorhandenen MySQL - Datenbanken?
NerdOfLinux

Antworten:

18

Ich habe viele Ansätze ausprobiert, bis ich erfolgreich war.

Der Ansatz, der funktioniert hat

Der einzige Ansatz, der funktionierte, war das Herunterladen der Datei deb-bundble.tar von der MySQL-Website und die Installation der Pakete nacheinander. Ich habe diese Schritte befolgt:

  • Gehen Sie zur Download-Seite von MySQL 5.6: https://dev.mysql.com/downloads/mysql/5.6.html#downloads
  • Wählen Sie in den Betriebssystemoptionen "Ubuntu 14.04 64-Bit" aus.
  • Laden Sie das Deb-Bundle herunter, eine Datei mit dem Namen: mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tarNormalerweise ist dies die erste Option
  • Entpacken Sie das Bundle irgendwo mit: tar -xf mysql-server_5.6.40-1ubuntu14.04_amd64.deb-bundle.tar
    • Der Teer enthält mehrere debPakete, einschließlich mysql-server, mysql-community-server... usw.
    • Dann habe ich versucht, diese mit: sudo dpkg -i <package-name>eins nach dem anderen zu installieren , aber ich hatte ihre Reihenfolge gemäß den Fehlermeldungen befolgt, die ausgelöst wurden, z. B.: Ich habe zuerst versucht : sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.deb, es ist fehlgeschlagen, weil es mysql-community-server_5.6.40-1ubuntu14.04_amd64.debzuerst installiert werden muss und so weiter. Die richtige Reihenfolge für einige ist: mysql-common, mysql-community-client, mysql-clientund dann mysql-community-server.
    • Einige der Pakete wurden erfolgreich installiert, andere erzeugten Fehler. Nachdem ich sudo dpkg -i mysql-server_5.6.40-1ubuntu14.04_amd64.debdas letzte Mal versucht hatte, einige Fehler zu verursachen, versuchte ich es verzweifelt: sudo apt-get install -fMySQL Server 5.6 wurde erfolgreich installiert, ist betriebsbereit und läuft

Ansätze, die nicht funktionierten

Verwenden von Trusty Universal Repo

Es ist erwähnenswert, dass ich zuerst den gleichen Ansatz ausprobiert habe, der früher in Ubuntu 16.04 funktioniert hat, dh das Repo "Vertrauenswürdiges Universum" hinzuzufügen und zu versuchen, mysql-server-5.6 zu installieren, dh ich habe Folgendes befolgt:

sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu trusty universe'
sudo apt-get update
apt-get install mysql-server-5.6

Dieser Ansatz hat NICHT funktioniert. Es ist fehlgeschlagen, da eine Abhängigkeit vorhanden ist initscripts, die nicht installiert werden kann. Es scheint, dass es nach Ubuntu 16.04 ersetzt wurde. Die Installation des Ersatzes util-util-linux sysvinit-utilshat auch nicht geholfen.

Verwenden des MySQL apt-Konfigurationspakets

Ich habe auch versucht, das MySQL-Konfigurationspaket ( mysql-apt-config_0.7.3-1_all.deb) zu verwenden, das ich von diesem Repo heruntergeladen habe: https://repo.mysql.com/ und installiert über : sudo dpkg -i mysql-apt-config_0.7.3-1_all.deb. Es dauerte nicht Ubuntu 18.04 (bionic) natürlich erkennen, so, ich tat , als ob es xenial ist und MySQL Server Version 5.6 konfiguriert, dann versuchte ich jetzt zur Verfügung , die MySQL - Version zu überprüfen für die Installation verwendet: apt-cache policy mysql-serveraber das hat auch nicht Arbeit habe ich noch spätere Versionen als 5.6.

Schlussbemerkung

Obwohl die letzten beiden Ansätze nicht funktionierten, haben sie möglicherweise zum Erfolg des ersten Ansatzes beigetragen, indem sie einige Pakete oder Konfigurationen zur Verfügung gestellt haben. Ich weiß es ehrlich gesagt nicht.

Als ich hoffnungslos wurde, dass ein Ansatz funktionieren würde, überlegte ich, ihn aus dem Quellcode zu kompilieren und zu installieren. Ich begann dieses Unterfangen (ich installierte die Build-Grundlagen und erstellte die Benutzergruppe und den Benutzer) und wollte gerade den Quellcode abrufen, als ich darauf stieß Das Deb-Bundle, das sich als fruchtbar herausstellte und der oben beschriebene erfolgreiche Ansatz war.

Ahmed Moawad
quelle
Hallo Ahmed, ich freue mich sehr, dass du deine harte Arbeit postest. Ich weiß, dass diese Lösungen funktionieren sollten (wie ich es endlich getan habe), aber ich würde es gerne auf Ubuntu- Weise tun . Es muss einen Weg gegeben haben, dies zu tun. Vielen Dank für diese Lösung.
Purushotam Sangroula
1
Danke @anime. Angesichts der Tatsache, dass Ubuntu 18.04 vor ungefähr einer Woche veröffentlicht wurde, wird erwartet, dass noch niemand einen Fix oder ein Repo eines Drittanbieters durchgeführt hat, um es über zu installieren apt.
Ahmed Moawad
MySQL hat das apt-repo auf mysql-apt-config_0.8.10-1_all.deb aktualisiert. Was Bionic unterstützt und unterstützt, JEDOCH haben sie nur 5.7 und 8 als Optionen in dieses Repo aufgenommen ... also keine 5.6 von MySQL zu diesem Zeitpunkt für
Bionic
2
Die Reihenfolge, die für mich funktioniert hat: sudo dpkg -i mysql-client_ * mysql-community-server_ * mysql-server_ * mysql-community-source_ * libmysqlclient18_ * libmysqlclient-dev_ * libmysqld-dev_ * mysql-community-client_ * mysql- -bench_ * mysql-common_ * mysql-community-test_ * mysql-testsuite_ *
brandones
Nett von dir. Sie haben die Dinge hinzugefügt, die funktionierten und die Dinge, die nicht funktionierten.
Soundararajan
5

Vielleicht ein bisschen offtopisch, aber meine bevorzugte Art, solche Dinge zu lösen, ist die Verwendung von Docker.

Sie können Docker und Docker-Compose installieren. Erstellen Sie eine docker-compose.yml-Datei, im Beispiel /home/whatever/mysql-5.6, die so aussieht.

services:

  db:
    image: mysql:5.6
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example

und dann docker-compose up -d

Alternativ können Sie einfach Docker-CE installieren und einen "Dryrun" des Images mit dem folgenden Befehl ausführen, um es einfach auszuchecken.

docker run -it mysql:5.6 /bin/bash

Vollständige Erklärung der MySQL-Docker-Dateien hier. https://hub.docker.com/_/mysql/

BD Bär
quelle
Dies ist heutzutage wahrscheinlich der richtige Weg.
Marcogmonteiro
2

Sie können Mysql 5.6-Debian-Pakete manuell aus dem Mysql apt-Repository herunterladen und installieren .

Ketan Patel
quelle
Danke aber nein. Unter Ubuntu 18.04 bietet Ihnen das offizielle MySQL-Repo (das APT-Paket) nur die Option von MySQL 5.7 oder 8.0. Ich habe es gerade versucht.
Paul
Bearbeitete Antwort mit URL, unter der Sie MySQL 5.6-Debian-Pakete herunterladen können.
Ketan Patel
1

MariaDB ist ein vollständig kompatibler Drop-In-Ersatz für MySQL und in den Standard-Ubuntu-Repositorys verfügbar. Es kann installiert werden mit:

sudo apt update
sudo apt install mariadb-server-10.0 mariadb-client-10.0

Das Setup sollte alle vorhandenen MySQL-Datenbanken erkennen und importieren. Lesen Sie jedoch für alle Fälle diese Antwort und halten Sie ein Backup bereit.

Anmerkungen zu MariaDB

Während die Frage über ist MySQL, MariaDB

ist ein erweiterter Drop-In-Ersatz für MySQL

und ist kompatibel mit allen * Anwendungen, die MySQL verwenden. Es hört auf den gleichen Ports und alle Befehle gleich sind (dh mysql, mysqldumpusw.).

* Ok, Sie können wahrscheinlich einige wirklich alte Anwendungen finden, die mit MariaDB nicht funktionieren, aber die Chancen dafür sind wirklich sehr, sehr gering.

NerdOfLinux
quelle
Wie richten wir die MySQL-Version darin ein?
Purushotam Sangroula
Ich glaube nicht, dass du kannst. Ich empfehle Ihnen, es auf einem VPS zu versuchen , um sicherzustellen, dass alles funktioniert, bevor Sie es live schalten. Der Link gibt Ihnen bis zu 2 Monate kostenlos (und hilft mir ein bisschen :-)), aber jeder VPS-Anbieter wird es tun
NerdOfLinux
Nach dem, was ich mit 18.04 sehe. wo ist nur mariadb-server-10.1...
wittich
0

Ich weiß, dass diese Antwort etwas spät ist. Aber ich musste erwähnen, dass die aktuelle Version von MySQL APT Repository (mysql-apt-config_0.8.12-1_all.deb) unter Ubuntu 18.04 gut mit mir funktioniert hat.

Hier erfahren Sie, wie Sie es verwenden.

KhogaEslam
quelle
Ermöglicht dies die Installation von MySQL 5.6 unter Ubuntu 18.04?
III
Beim Entpacken habe ich nur die Möglichkeit von 8.0
iii
Es funktionierte gut mit mir mit der erwähnten Version am Datum dieser Antwort
KhogaEslam
0

Ja! Sie können MySQL 5.5.56 gemäß diesen Installationsanweisungen installieren .

jobima
quelle
Vielen Dank für Ihren Beitrag zu AskUbuntu! Trotzdem wollte ich auf zwei hoffentlich konstruktive Kritikpunkte zu Ihrer Antwort hinweisen. Erstens sucht das OP speziell nach einer Lösung mit herkömmlichen Paketverwaltungstools. Sie kommentierten, dass die optimierte Antwort zwar absolut gut sei, aber nicht das, wonach sie suchen. Mit rohen Tarballs ist Ihre noch weiter entfernt. Das andere Problem ist die rohe Verbindung. Bei der Beschreibung einer guten Antwort werden askubuntu.com/help/how-to-answer Kontext und ausführlichere Erklärungen empfohlen. Ich hoffe das hilft bei weiteren Beiträgen zur Seite!
wxl