Installieren Sie MySql 5.6 unter Ubuntu 16.04

39

Es scheint, dass Ubuntu 16.04 mit MySQL 5.7 geliefert wird, ich muss jedoch 5.6 installieren.

Wenn ich versuche, es explizit zu installieren, sudo apt-get install mysql-server-5.6erhalte ich die folgende Fehlermeldung:

Package mysql-server-5.6 is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  mysql-community-server:i386 mysql-common:i386 mysql-community-server mysql-common percona-xtradb-cluster-server-5.6:i386 percona-server-server-5.6:i386 mysql-testsuite-5.7:i386
  mariadb-server-10.0:i386 percona-xtradb-cluster-server-5.6 percona-server-server-5.6 mysql-testsuite-5.7 mariadb-server-10.0 mysql-server-core-5.7:i386 mysql-server-5.7:i386 mysql-server-core-5.7
  mysql-server-5.7

Gibt es eine Möglichkeit, 5.6 zu installieren?

Tarlog
quelle
Das MySQL 5.7.12 ist ein RAM-Schwein.
Dibs

Antworten:

68

Ich habe folgenden Ansatz gewählt:

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

Wenn während der Ausführung des letzten Befehls ein Fehler auftritt, lesen Sie den Kommentarbereich dieser Antwort.

basex
quelle
10
Möglicherweise müssen Sie sudo rm /var/lib/mysql/debian-5.7.flagoder es wird Sub-process /usr/bin/dpkg returned an error code (1)
abgebrochen
2
Der MySQL-Dienst startet nicht richtig. using 'systemctl status mysql.service' Ich erhalte die Meldung 'Fehler beim Starten von LSB: Starten und Stoppen des mysql-Datenbankserverdämons'. Liegt das daran, dass das Trusty-Repo Upstart und 5.7 Systemd verwendet?
Jowan Sebastian
1
@jowansebastian - Hast du jemals herausgefunden, warum dies geschah? Ich habe einen ähnlichen Fehler.
Barrie Reader
@BarrieReader Nein, tut mir leid, ich habe eine Centos-VM für das erstellt, was ich tat, und habe es gut funktionieren lassen.
Jowan Sebastian
+1. Würdest du wissen, ob es eine Möglichkeit gibt, eine bestimmte Version von MySQL 5.6 wie 5.6.35 zu installieren?
vphilipnyc
9

Sieht so aus, als hätte ich es geschafft.

  1. Unter Software & Updates / Andere Software wurde das Repository 14.04 hinzugefügt:

    deb http://archive.ubuntu.com/ubuntu trusty main
    
  2. Installierter MySQL Client und Server:

    sudo apt install mysql-server-5.6
    sudo apt install mysql-client-5.6
    

Update: Stellen Sie vor der Installation von 5.6 sicher, dass keine anderen mysql-Pakete vorhanden sind:

dpkg -l | grep mysql - Gibt eine Liste von MySQL-Paketen zurück.

Verwenden Sie apt-get purge <package name>, um sie zu reinigen.

Quelle: 16.04 Upgrade brach MySQL-Server

Tarlog
quelle
1
Gute Lösung, aber warum brauchst du 5.6 statt 5.7?
Uwe Burger
5
5.7 ist nicht abwärtskompatibel. Einige SQLs der Anwendung, an der ich arbeite,
schlagen
2
Welchen Fehler bekommen Sie? Ich vermute, dass dies an dem ONLY_FULL_GROUP_BY-Flag liegt, das in MySQL 5.7 standardmäßig aktiviert ist. Schalten Sie es aus und es könnte Ihnen gut gehen.
Jaydee
Momentan erinnere ich mich nicht an die Details, ich habe es vor fast zwei Monaten versucht. Wenn ich mich richtig erinnere, handelte es sich um eine Datenverarbeitung. Vielleicht das Parsen von Daten.
Tarlog
5.7 erzwingt tatsächlich Tabellenschema
Richard Haven
8

Ich hatte das gleiche Problem und habe die folgenden einfachen Schritte ausgeführt:

 sudo apt-get install software-properties-common
 $ sudo add-apt-repository -y ppa:ondrej/mysql-5.6
 $ sudo apt-get update
 $ sudo apt-get install mysql-server-5.6

Lösung hat bei mir funktioniert Prost !!

Ramesh Chand
quelle
Zusätzlich zu diesen Lösungen: Sie müssen zuerst die folgenden Ordner entfernen: /etc/mysql/ /var/lib/mysql /var/log/mysql /var/lib/mysql-filters /var/lib/mysql-keyringUnd diese Datei:/var/lib/mysql/debian-5.7.flag
3
Um ondrej zu zitieren: "nicht benutzen, kaputt" . Hier finden Sie heraus launchpad.net/~ondrej
Fractalf
3
dpkg --force-depends -P `dpkg -l |awk '/mysql/{print $2}'`

rm -r /etc/mysql/

apt-get install mysql-server mysql-client
Michal91
quelle
1

Die MySQL-Entwickler stellen Xenial-Pakete von MySQL 5.6 in ihren eigenen Repositories zur Verfügung . Dies sollte daher der Installation der offiziellen Ubuntu Trusty-Pakete vorgezogen werden , da es im Allgemeinen besser ist, Pakete zu installieren, die für Ihre Ubuntu-Version erstellt wurden.

Wenn Sie bereits MySQL Server-Pakete haben, sollten Sie diese zuerst deinstallieren. Deinstallieren Sie einfach alles, was von angezeigt wird dpkg -l | grep mysql-server.

Laden Sie einfach das mysql-apt-configDEB-Paket unter dem vorherigen Link herunter und installieren Sie es . Während der Installation werden Sie gefragt, welche Version Sie möchten, sodass Sie 5.6 auswählen können. Nach Abschluss der Paketinstallation sudo apt update && sudo apt install mysql-server-5.6wird MySQL Server 5.6 installiert.

fkraiem
quelle
3
Dies funktioniert nicht, es gibt keine 5.6 Version Option, nur 5.7
Frodik
5
In der Tat scheint es, dass seit diese Antwort geschrieben wurde, die Unterstützung für MySQL 5.6 aus dem mysql-apt-configPaket entfernt wurde, was seltsam ist, da es immer noch als auf der verlinkten Seite unterstützt aufgeführt ist ...
fkraiem
1

Ich hatte das gleiche Problem und habe viele Optionen ausprobiert. Und ich hatte viele Probleme mit libdbd-mysql-perl; Das System sagte, dass diese Bibliothek nicht installiert werden würde.

Also habe ich mir überlegt, es mit der Aptitude zu installieren, die ein Paket installiert und alle Abhängigkeiten korrigiert.

Wenn Sie keine Begabung haben, können Sie es so bekommen:sudo apt-get install aptitude

Zunächst müssen Sie Ihr vorhandenes MySQL deinstallieren. Als nächstes müssen Sie das gewünschte Paket installieren.

sudo aptitude install mysql-server-5.6

Die Begabung gibt Ihnen eine Menge Wahl, was zu tun ist. Die erste Möglichkeit besteht darin, das eigentliche Paket beizubehalten. Drücken Sie also (N) o, bis Sie die Option zum Herunterstufen der nächsten Pakete finden:

libmysqlclient20 [5.7.14-1ubuntu16.04 (<NULL>, now) -> 5.7.13-0ubuntu0.16
mysql-common [5.7.14-1ubuntu16.04 (<NULL>, now) -> 5.6.30-1+deb.sury.org

Drücken Sie dann (Y) es und die Aptitude installiert den mysql-server-5.6. Hier ist die Option, die Sie akzeptieren sollten:

Bildbeschreibung hier eingeben

Wenn das System danach keine Verbindung zum MySQL-Server herstellen kann, müssen Sie Ihren Computer neu starten.

rebduvid
quelle