Ich verwende die virtuelle Linux-Turnkey-Maschine. Die Version von Debian ist anscheinend auf dem "Wheezy" -Upgrade-Pfad (wenn Sie es so nennen). Wie Sie sehen, fühle ich mich mit Linux nicht ganz wohl.
Ich benötige einige neue Funktionen, die MySQL 5.6 bietet, während meine aktuelle Installation MySQL 5.5.35 ist. Ich möchte die neueste Version (5.6.17 ab diesem Posting) oder mindestens eine 5.6.x erhalten.
Ich habe versucht apt-get update
, apt-get upgrade
, apt-get dist-upgrade
. Diese aktualisierten eine Reihe von Dingen erfolgreich, aber keine waren MySQL. Ich habe es versucht apt-get upgrade mysql-server
, was besagt, dass ich bereits die neueste Version habe.
Eine Debian Wheezy-Paket-Repository-Liste im Web zeigt MySQL 5.5 und nichts anderes, wenn ich 5.6 benötige. Ich habe dann etwas über "Backports" gelesen, was so klingt, als könnte es mir Dinge bringen, die mein spezielles Debian noch nicht haben sollte - aber ich kann es anscheinend nicht zum Laufen bringen. Es erfordert das Hinzufügen von Zeilen zu /etc/apt/sources.list.d/sources.list
. Wenn ich das versuche und dann laufe apt-get update
, erhalte ich 404-Fehler.
Ich habe auch mehrere andere Routen ausprobiert, eine davon war das Kompilieren des Vanille-MySQL-Downloads, an dem ich kläglich gescheitert bin und es lieber nicht noch einmal versuchen würde.
Ich bin absolut verblüfft darüber, wie das gemacht wird. Die meisten der URLs, die in Foren / Blogs für apt-get
und sogar für aufgeführt sind wget
, scheinen bald nach dem Posten zu vergehen, daher kann ich nicht verstehen, wie jemand überhaupt die richtigen Informationen findet. Ich habe versucht, dies für zwei Tage gerade jetzt zu tun und kann nirgendwo hinkommen.
Vorausgesetzt, Sie haben dies bisher gelesen, würde ich gerne wissen, ob jemand eine Möglichkeit hat, MySQL in Debian auf eine relativ schmerzlose automatisierte Weise zu aktualisieren (eine, bei der ich make
meine aktuellen Datenbanken und Konfigurationen nicht manuell verwenden oder exportieren / importieren müsste) ).
slony
Funktionen und konnte keine neuere Version als 9.1 finden, der es an Slony mangelt.Antworten:
Das Neuerstellen der experimentellen 5.6-MySQL-Quellen aus "experimental on wheezy" ist ein Kinderspiel. Sie benötigen jedoch viel Speicherplatz. Nach Abschluss des Builds wurden im Buildverzeichnis 5,2 GB verwendet. Außerdem dauert der Aufbau einige Zeit und es werden unglaublich viele Tests durchgeführt. Ich habe mich nicht darum gekümmert, aber ein paar Stunden zu warten. Es ist möglich, die Tests zu deaktivieren, aber ich empfehle, sie laufen zu lassen - es ist harmlos, solange sie bestehen. Sie taten auf meiner Maschine. Die gute Nachricht ist, dass ich es ohne großen Aufwand bauen und installieren konnte. Ich habe den folgenden Basistest durchgeführt.
So kann ich mich zumindest mit dem Server verbinden. So sehen die installierten Pakete aus:
Hier ist eine Aufschlüsselung der Schritte.
Holen Sie sich zuerst die Quellen. Sie müssen Folgendes hinzufügen (oder für Ihren bevorzugten Server anpassen)
/etc/apt/sources.list
:Fügen Sie auch Folgendes hinzu
/etc/apt/preferences
.Dann renne
Dann renne
in einem geeigneten Verzeichnis. Normalerweise erstelle ich ein Verzeichnis
/usr/local/src
,in diesem Fall zum Beispiel
/usr/local/src/mysql
.Dann CD in
/usr/local/src/mysql
.Lauf
Auf meinem Rechner installierte dies ein paar Pakete.
Installieren Sie einige Basispakete zum Erstellen.
Dann cd in das resultierende Quellverzeichnis
/usr/local/src/mysql/mysql-5.6- 5.6.16
und starteDas wird eine Weile dauern. In einigen Fällen ist es sinnvoll,
die Versionsnummer zu erhöhen, dies ist hier jedoch nicht unbedingt erforderlich. Da es unwahrscheinlich ist, dass ein anderes MySQL 5.6-Paket den Weg in Wheezy findet.
Wenn Sie die Tests nicht ausführen möchten, können Sie stattdessen verwenden
Jetzt sollten Sie libdbd-mysql-perl installieren, eine Laufzeitabhängigkeit der mysql-Pakete.
Dann CD eine Ebene höher auf
/usr/local/src/mysql
. Dort sollte es einige Deb-Pakete geben. Sie werden mindestens installieren wollenDies kann zum Beispiel durch Ausführen von:
quelle
dpkg-buildpackage: host architecture amd64
fakeroot debian/rules clean
Can't exec "fakeroot": No such file or directory at /usr/bin/dpkg-buildpackage line 510.
dpkg-buildpackage: error: fakeroot debian/rules clean failed with unknown exit code -1
debuild: fatal error at line 1357:
dpkg-buildpackage -rfakeroot -D -us -uc failed
Ich mache dies in Turnkey-Linux, von dem ich denke, dass es LAMP verwendet, wenn das hilft.apt-get install fakeroot
.mysqldump
und dann die dump-Datei neu laden. Natürlich können Sie auch Ihre Datenbanken sichern.apt-get remove mysql-server
undapt-get remove mysql-client
musste es auchapt-get install libterm-readkey-perl
vor dem letzten Schritt tun . Außerdem musste diemysql-server-core
Installation im letzten Schritt zuvor durchgeführt werdenmysql-server
. Ich führe jetzt offiziell MySQL 5.6.16 aus und habe die InnoDB-Suchindizes im Volltext erfolgreich getestet (der Grund, warum ich das brauchte)! Danke, Faheem Mitha. Du hast meinen Verstand gerettet.Derzeit ist die beste Option die Verwendung eines offiziellen MySQL APT-Repos, das die
apt-get upgrade
Installation ermöglicht .quelle
apt-get upgrade
, dann muss ich aufapt-get upgrade mysql-server
, und leicht von MySQL aktualisieren 5,5-5,7. Nach dem Upgrade müssen Siemysql_upgrade -u root
Alle getestet Viel Spaß.
quelle
root@lamp local/mysql# update-rc.d mysql-5.7 defaults
:update-rc.d: using dependency based boot sequencing
update-rc.d: error: unable to read /etc/init.d/mysql-5.7
root@lamp local/mysql# service mysql start
:Starting MySQL
[FAIL......[....] The server quit without updating PID file (/opt/mysql/server-5.6/data/lamp.pid). ... failed!