it-swarm.com.de

Wie kann ein Upgrade von MySQL 5.5.40 auf MySQL 5.7 durchgeführt werden?

Wie kann ich die MySQL-Version aktualisieren?

Aktuelle MySQL-Version: 5.5.40 

Zielversion von MySQL: MySQL 5.7 

OS: CentOS-Version 6.5 (Final)

14
matinict

Der Aktualisierungspfad lautet MySQL 5.5 -> MySQL 5.6 -> MySQL 5.7

Siehe https://dev.mysql.com/doc/refman/5.7/de/upgrading.html

8
Marc Alff

Der schnellste Weg ist wahrscheinlich, Ihre ältere DB-Version mit mysqldump zu sichern und in die neue 5.7-Datenbank wiederherzustellen.

Wie reibungslos der Prozess abläuft, hängt davon ab, wie viele Funktionen in 5.7 in 5.5 verworfen wurden.

In meinem Fall war das einzige Feature, das in 5.7 verworfen wurde, timestamp default '0000-00-00 00:00:00' Die Lösung dafür war, sed auf dump-Datei auszuführen und ersetzen Sie '' 0000-00-00 00:00:00 'mit CURRENT_TIMESTAMP

sed -i.bu 's /'\'' 0000-00-00 00:00:00 '\' '/ CURRENT_TIMESTAMP/g' fixed_dumo.sql

Danach wurde die fixed_dump.sql in frische 5.7 DB importiert und es funktionierte reibungslos . Ich hoffe das hilft.

8
Alex

Ja. Von einem "logischen Upgrade" können Sie von 5.5 für 5.7 migrieren. Auf diese Weise: 5.5 -> 5.6 -> 5.7, ist nur für das Upgrade "In Place" mit Datenordner erforderlich. 

Siehe: https://www.percona.com/forums/questions-discussions/mysql-and-percona-server/43956-what-isthe-preferred-mysql-upgrade-path-5-5-to- 5-7

5
Carlos

Ich bin vielleicht zu spät dran, aber eine einfache und schnelle Lösung ohne oder mit minimalen Ausfallzeiten könnte AWS Database-Migration-Service sein, mit dem Sie Ihre Datenbank auf eine andere Version sowie auf einen anderen Server oder RDS aktualisieren können. 

Ich habe dies ausprobiert und MySQL5.5 auf MySQL5.7 ohne Ausfallzeit in der Produktion konvertiert .. Hier ist eine Demo für dasselbe - Wie man MySQL5.5 auf MySQL5.7 migriert

Schritte:

  • Legen Sie Ihr aktuelles MySQL als Master fest

  • Erstellen Sie eine neue Instanz/einen neuen Server mit MySQL5.7 mit den erforderlichen Benutzern

  • Gehen Sie zu AWS DatabaseMigrationService (DMS) und erstellen Sie eine Replikations-Instanz .__

  • Nach dem Erstellen der Replikationsinstanz werden Sie aufgefordert, die Detail-Verbindung zu den Quellendatenbanken (MySQL5.5) und Zieldatenbanken (MySQL5.7) aufzufüllen.

  • Erstellen Sie eine Aufgabe in DMS. Dies ist die Logik, auf der Sie die Daten (bestimmte Datenbank oder bestimmte Tabelle) migrieren möchten

  • Starten Sie die Aufgabe

  • Wenn die Aufgabe abgeschlossen ist und die Daten synchronisiert sind, wechseln Sie einfach den DNS-Eintrag , Der auf MySQL5.5 zeigt, auf MySQL5.7

5
Ajeet Khan

schritt 1: Machen Sie eine Sicherung

mysqldump --lock-all-tables -u root -p --all-databases > dump.sql

schritt 2: Entfernen Sie alte MySQL

Sudo apt-get remove mysql-server
Sudo apt-get autoremove

schritt 3: Installieren Sie eine neue Version von MySQL 5.6

Sudo apt-get install mysql-client-5.6 mysql-client-core-5.6

Sudo apt-get install mysql-server-5.6

für 5.7

wget http://dev.mysql.com/get/mysql-apt-config_0.6.0-1_all.deb

Sudo dpkg -i mysql-apt-config_0.6.0-1_all.deb

Sudo apt-get update

Sudo apt-get install mysql-server

schritt 4: Stellen Sie Ihre Daten wieder her

mysql -u root -p <dump.sql

5

Einfache Schritte für das Upgrade von Mysql Version 5.5 auf 5.7.

1

Nach einer Reihe fehlgeschlagener Versuche bin ich zu folgendem Schluss gekommen:

  1. Um von 5.5 zu aktualisieren, gehen Sie zuerst zu 5.6 und dann zu 5.7
  2. Speichern Sie die Datenordner und installieren Sie eine Neuinstallation von 5.7

Beide benötigen die in allen obigen Kommentaren erwähnte apt-config.

Der Kicker soll Sudo apt install mysql-**community**-server ausführen

0
mrbaron666