Ein Problem mit MySQL 5.6.10 und PHP

Unifex

New Member
Ich habe einen MySQL Server 5.5 upgedatet mit 5.6 und zwar nach dieser Anleitung:

http://www.peterchen.net/2013/02/20/en-how-to-install-mysql-5-6-on-ubuntu-12-04-precise/

Hat auch sehr gut funktioniert und zwei Anwendungen laufen schon mit der neuen Version.

PHPmyAdmin gibt mir allerdings eine kleine Warnmeldung aus:

"Die Version der verwendeten PHP-MySQL-Bibliothek 5.5.29 unterscheidet sich von der Version des MySQL-Servers 5.6.10. Dies kann zu unerwartetem Verhalten führen."

Urgs, wie kann ich das Problem beheben?
 
Du wirst jegliche Software die libmysql als Abhängigkeit hat rekompilieren müssen.
Zudem wirst Du Deine Tabellen und Apps migrieren müssen, da sich Einiges gegenüber 5.[0-5] geändert hat.
Die Doku hilft dabei...

Gibt es einen besonderen Grund 5.6 einzusetzen und sich damit das Systemmanagement zu zerschiessen und seine Daten unnötig zu gefährden?
 
Na ja, ich muss ja mal schauen wie eine neue Version mit unser Software funktioniert. Da ist ja ein Testserver.

Neben Geschwindikeitsvorteilen wollte ich mir auch mal die Memchaed Sache anschauen, die diese Version unterstützt.
 
Auf einem Testsystem spricht nix gegen den Kompilierungsvorgang und das Zerschiessen des Paketmanagement.
Die Migrationsarbeiten müssen ja ohnehin stattfinden.

Aber Vorsicht: MySQL 5.6 ist in manchen Situationen langsamer als MySQL 5.5, weshalb auch MariaDB nicht auf MySQL 5.6 als Basis setzt, sondern nur einzelne Verbesserungen auf MyriaDB 5.5/10.0 (zurück)portiert.

Good luck.
 
Noch ein Tipp:
Du musst zwischen 32- und 64bit Variante unterscheiden.

Hast du ein 64bit Server da stehen, sollte dort auch ein 64bit Betriebssystem installiert werden, damit der Speicherbedarf korrekt bedeckt wird. Auch solltest du dann 64bit Software installieren (indemfalle MySQL mit 64bit).

Hatte ich damals in meinen Anfangszeiten auch, wo ich dann ein 32bit (Betriebs-)System installiert hatte und mich wunderte, warum MySQL nur den halben Speicher nutzen kann.

Achte also auf so Grundlegende Dinge.
 
Noch ein Tipp:
Du musst zwischen 32- und 64bit Variante unterscheiden....
Sorry, no offense aber das klingt mir jetzt bzgl. des konkreten Themas ziemlich ins Blaue hineingeschossen und etwas danach, den Beitragszähler zu pushen? :rolleyes:

Zum Thema:
Der TE wird in jedem Falle PHP bzw. Teile davon selbst neu bauen müssen. Bei einer Debian-basierten Binär-Distribution möchte man das in aller Regel nicht tun. Weil nämlich, dann fällt nicht nur mySQL aus der Paketverwaltung sondern auch PHP und weitere Abhängigkeiten, nicht wirklich schön.

Da es primär um Performance geht, würde ich statt mySQL 5.6 eher MariaDB den Vorzug bzw. eine Chance geben. Das dürfte dann auch problemlos über die Paketverwaltung laufen, da es unter Debian und damit sicher auch für Ubuntu im stable-branch entsprechende Pakete gibt.

Wenn die Intention eher in die Richtung geht, generell "bleeding edge"-Software einzusetzen und das letzte Quäntchen Leistung rauszuholen, dann würde ich den Wechsel zu einer source-basierten Distro empfehlen wie Gentoo oder Archlinux.
 
Das dürfte dann auch problemlos über die Paketverwaltung laufen, da es unter Debian und damit sicher auch für Ubuntu im stable-branch entsprechende Pakete gibt.
Nope. Debian stable kennt nur Mysql, kein Mariadb.
Üblicherweise verwendet man für aktuelle Pakete zusätzliche Repositories wie das Dotdeb Repository oder in diesem Fall AskMonty's eigene Repos:
https://downloads.mariadb.org/mariadb/repositories/

@TE:
Du hast ausserhalb der apt Paketverwaltung das Paket aktualisiert was man eigentlich nicht machen sollte da es zuviele problembehaftete Abhängigkeiten gibt. Die einfachste Lösung wäre ein Repo zu verwenden welche die entsprechende 5.6'er Version mit PHP ausliefert.
Generell ergibt ein Versionsunterschied aber keine Probleme, nur Meckereien von u.a. PMA.
 
Mal eine "blöde" Zusatzfrage. Den SQL Server kann man ja als .deb runterladen bei MySql und installieren. Einen Client gibt es dazu allerdings nie.

Bleibt einem eigentlich dann nie was anderes übrig als z.B. einen MySql Server 5.6.13 mit z.B. einem MySql Client 5.5.31 zu betreiben?

Wären da eigentlich Probleme zu erwarten?
 
AFAIK, sind in dem Serverpaket auch immer die Clientprogramme mit drin. Falls du nicht die Distro-Variante von mySQL einsetzen willst, musst Du das alte mySQL vorher rückstandslos entfernen.
 
Nachdem heute ein Problem gelöst wurde, habe ich ja vielleicht auch noch Glück mit dem zweiten hier.

Hat jemand einen Tipp?
 
m.E. hast Du das schon mit der Installation des o.g. Pakets getan. Im Zweifelsfall vergleichst Du halt das offizielle Debian-Paket mit dem Deinigen.
 
m.E. hast Du das schon mit der Installation des o.g. Pakets getan. Im Zweifelsfall vergleichst Du halt das offizielle Debian-Paket mit dem Deinigen.


Vielleicht habe ich da auch nur ein Verständnisproblem:

Normalerweise würde ich einen SQL Server so installieren:

Code:
apt-get install mysql-server php5-mysql mysql-client

Wenn ich dann eine Anwendung auf dem Server spiele wie myphpadmin, mysqldumper oder ein Vbulletin, dann funktioniert das mit dem Datenbank Zugriff.

Wenn ich allerdings nur das .DEB installieren von der MySQL Webseite, finden die Programme keinen Server. Meine Vermutung war, weil ja nicht explizit das Paket mysql-client installiert wurde, das die Verbindung dafür herstellt.

Verstehe ich da was falsch?
 
zu PHP: in der Tat, der Treiber für die Anbindung an mySQL (mysqli) ist nicht in dem von Dir genannten Serverpaket drin. Der kommt direkt mit dem PHP-Sourcecode. Um sauber zu sein, müsstest Du daher das Paket php5-mysql entfernen und aus dem PHP-Quellcode das modul selbst kompilieren.

Btw, in Deinem Beispiel ist die explizite Angabe von mysql-client eigentlich unnötig, weil das Paket zwingend bei mysql-server mitinstalliert wird.

http://packages.debian.org/wheezy/mysql-server-5.5

http://packages.debian.org/wheezy/i386/mysql-client-5.5/filelist

Auf Grund der Inhalte gehe ich davon aus, dass die Inhalte auch in Deinem Paket mit drin sind.
 
Btw, in Deinem Beispiel ist die explizite Angabe von mysql-client eigentlich unnötig, weil das Paket zwingend bei mysql-server mitinstalliert wird.

http://packages.debian.org/wheezy/mysql-server-5.5

http://packages.debian.org/wheezy/i386/mysql-client-5.5/filelist

Auf Grund der Inhalte gehe ich davon aus, dass die Inhalte auch in Deinem Paket mit drin sind.


Erst mal vielen Dank für die Antwort.

Leider handelt es sich aber nicht um die MySql Version 5.5 von Debian sondern um die 5.6 Version direkt von MySql.
 
Erst mal vielen Dank für die Antwort.

Leider handelt es sich aber nicht um die MySql Version 5.5 von Debian sondern um die 5.6 Version direkt von MySql.
Hast Du Dir die Inhalte deines 5.6er Paketes schonmal angeschaut? Ich kann das erst heute abend machen.
 
Yep habe ich. Nichts zu finden von einem wirklichen Client.

Vielleicht ist es ja auch so, dass man einen 5.5 Client von Debian nehmen muss, bis diese einen 5.6 mal relasen.
 
Ein mysqladmin oder ein mysqldump sollen in Deinem 5.6er-Paket nicht enthalten sein? Das kann ich mir schwer vorstellen. Denn das sind die typischen Client-Programme.
 
Back
Top