mySQL 5.7 und mySQL 8
Verfasst: 11.03.2024, 11:36
Hallo,
Ja, es gibt einige Unterschiede zwischen SQL von MySQL 5.7 und MySQL 8.0, die du beachten solltest, wenn du eine Migration planst. Hier sind einige der wichtigsten Änderungen:
- In MySQL 8.0 gibt es einige neue Keywords und Reserved Words, die du nicht mehr als Spaltennamen oder andere Bezeichner verwenden kannst, es sei denn, du umgibst sie mit einem Backtick. Zum Beispiel ist `groups` ein neues Reserved Word in MySQL 8.0, das du in MySQL 5.7 noch verwenden konntest.
- Die PASSWORD() Funktion, die du in MySQL 5.7 zum Hashen von Passwörtern verwenden konntest, wurde in MySQL 8.0 entfernt. Du musst daher deinen Code umschreiben, um eine andere Hash-Funktion zu verwenden, wie z.B. SHA1(SHA1()).
- Der Standardzeichensatz hat sich von latin1 zu utf8mb4 geändert, was bedeutet, dass du mehr Speicherplatz für deine Zeichenketten benötigst, aber auch mehr Unicode-Zeichen unterstützt werden.
Unser Mod Projekt verwendet seit Jahren uft8mb4 als Standardzeichensatz
- MySQL 8.0 unterstützt die Verwendung von Ausdrücken als Standardwerte in Datentypspezifikationen. Das heißt, du kannst z.B. eine Spalte vom Typ BLOB, TEXT, GEOMETRY oder JSON mit einem Standardwert versehen, der von einer Funktion oder einem anderen Ausdruck abhängt.
- MySQL 8.0 hat ein neues Fehlerprotokollierungssystem, das auf der MySQL-Komponentenarchitektur basiert. Du kannst verschiedene Komponenten laden oder entladen, um die Fehlerprotokollierung anzupassen.
- MySQL 8.0 hat eine neue Art von Backup-Sperre, die DML während eines Online-Backups erlaubt, aber Operationen verhindert, die zu einem inkonsistenten Snapshot führen könnten. Die neuen Backup-Sperren werden durch die Syntax LOCK INSTANCE FOR BACKUP und UNLOCK INSTANCE unterstützt.
Das sind nur einige der Unterschiede zwischen MySQL 5.7 und MySQL 8.0. Es gibt noch viele weitere Neuerungen und Verbesserungen in MySQL 8.0, die du in der offiziellen Dokumentation nachlesen kannst.
MySQL-Update 5.7 zu MySQL 8.0: Wichtige Hinweise - UD Media. https://hilfe.udmedia.de/webhosting/mys ... -hinweise/.
Moving from MySQL 5.7 to MySQL 8.0 – What You Should Know. https://severalnines.com/blog/moving-my ... ould-know/.
MySQL 8 – das solltest du wissen - easyname blog. https://www.easyname.at/blog/news-2/upd ... du-wissen/.
https://dev.mysql.com/doc/refman/8.0/en/keywords.html.
https://hilfe.udmedia.de/webhosting/mys ... -anpassen/.
https://dev.mysql.com/doc/refman/8.0/en ... shell.html.
Beste Grüße
Ralf
Ja, es gibt einige Unterschiede zwischen SQL von MySQL 5.7 und MySQL 8.0, die du beachten solltest, wenn du eine Migration planst. Hier sind einige der wichtigsten Änderungen:
- In MySQL 8.0 gibt es einige neue Keywords und Reserved Words, die du nicht mehr als Spaltennamen oder andere Bezeichner verwenden kannst, es sei denn, du umgibst sie mit einem Backtick. Zum Beispiel ist `groups` ein neues Reserved Word in MySQL 8.0, das du in MySQL 5.7 noch verwenden konntest.
- Die PASSWORD() Funktion, die du in MySQL 5.7 zum Hashen von Passwörtern verwenden konntest, wurde in MySQL 8.0 entfernt. Du musst daher deinen Code umschreiben, um eine andere Hash-Funktion zu verwenden, wie z.B. SHA1(SHA1()).
- Der Standardzeichensatz hat sich von latin1 zu utf8mb4 geändert, was bedeutet, dass du mehr Speicherplatz für deine Zeichenketten benötigst, aber auch mehr Unicode-Zeichen unterstützt werden.
Unser Mod Projekt verwendet seit Jahren uft8mb4 als Standardzeichensatz
- MySQL 8.0 unterstützt die Verwendung von Ausdrücken als Standardwerte in Datentypspezifikationen. Das heißt, du kannst z.B. eine Spalte vom Typ BLOB, TEXT, GEOMETRY oder JSON mit einem Standardwert versehen, der von einer Funktion oder einem anderen Ausdruck abhängt.
- MySQL 8.0 hat ein neues Fehlerprotokollierungssystem, das auf der MySQL-Komponentenarchitektur basiert. Du kannst verschiedene Komponenten laden oder entladen, um die Fehlerprotokollierung anzupassen.
- MySQL 8.0 hat eine neue Art von Backup-Sperre, die DML während eines Online-Backups erlaubt, aber Operationen verhindert, die zu einem inkonsistenten Snapshot führen könnten. Die neuen Backup-Sperren werden durch die Syntax LOCK INSTANCE FOR BACKUP und UNLOCK INSTANCE unterstützt.
Das sind nur einige der Unterschiede zwischen MySQL 5.7 und MySQL 8.0. Es gibt noch viele weitere Neuerungen und Verbesserungen in MySQL 8.0, die du in der offiziellen Dokumentation nachlesen kannst.
MySQL-Update 5.7 zu MySQL 8.0: Wichtige Hinweise - UD Media. https://hilfe.udmedia.de/webhosting/mys ... -hinweise/.
Moving from MySQL 5.7 to MySQL 8.0 – What You Should Know. https://severalnines.com/blog/moving-my ... ould-know/.
MySQL 8 – das solltest du wissen - easyname blog. https://www.easyname.at/blog/news-2/upd ... du-wissen/.
https://dev.mysql.com/doc/refman/8.0/en/keywords.html.
https://hilfe.udmedia.de/webhosting/mys ... -anpassen/.
https://dev.mysql.com/doc/refman/8.0/en ... shell.html.
Beste Grüße
Ralf