Seite 1 von 1

Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 10.07.2021, 09:36
von Webmark
Hallo,

ich sichere meine Datenbank mit der jeweils aktuellen Version des MyOOS Dumper.

Nun habe ich in einem Forum gelesen, dass es bei der Wiederherstellung zu Problemen kommen kann, da der MyOOS Dumper z. B. nicht zwischen dem Zeichensatz utf8mb4 und utf8 unterscheiden könne und automatisch utf8 wählt.

In meinem Fall ist es aber notwendig, dass der Zeichensatz utf8mb4 gewählt wird.

Kann der MyOOS tatsächlich nicht zwischen utf8mb4 und utf8 unterscheiden, bzw. lässt sich dies ggf. manuell auswählen?

Viele Grüße
Markus

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 10.07.2021, 14:01
von r23
Hallo,

herzlich willkommen.

Vielen Dank für den Hinweis.

Beim Sichern steht utf8mb4 als Zeichensatz zur Auswahl zur Verfügung
2021-07-10 13_29_43-Greenshot.png
2021-07-10 13_29_43-Greenshot.png (61.92 KiB) 5945 mal betrachtet
Nach meiner Interpretation sollte sich MyOOS [Dumper] an diese Einstellungen halten.

Die Auswahl ist ja schon einmal eine Beruhigung.

Nach dieser Anleitung
https://qastack.com.de/programming/3007 ... s-in-mysql

benötigt man zum Beispiel für Emojis den utf8mb4 Zeichensatz.

Ich werde in den nächsten Tagen diesen => 😂 mit MyOOS [Dumper] sichern und wiederherstellen und vermutlich utf8mb4 als Standard einrichten.

Vielleicht schaffe ich dies bis zur nächsten Veröffentlichung. Diese ist für den 21.07. geplant. Mit der neuen WordPress Version.

Beste Grüße

Ralf

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 10.07.2021, 15:36
von r23
Hallo,


in
~/mod/inc/mysqli.php

Zeile 265

Code: Alles auswählen

function mod_mysqli_connect($encoding='utf8', $keycheck_off=false, $actual_table='')
nach

Code: Alles auswählen

function mod_mysqli_connect($encoding='utf8mb4', $keycheck_off=false, $actual_table='')
ändern.

Dann sollte es mit den Emojis in der Datenbank funktionieren.

Bzw. die "Standardkodierung des MySQL-Servers: " sollte dann auf utf8mb4 auf der Seite Sicherung stehen.

Änderungen sind in der nächsten MyOOS Dumper Version 21.07 enthalten
https://github.com/r23/MyOOS/commit/960 ... a3e5a73340

Schönes Wochenende

Ralf

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 10.07.2021, 16:57
von Webmark
Hallo Ralf,

besten Dank, dass du dich der Thematik direkt angenommen hast und die volle Unterstützung für utf8mb4 in der kommenden Version implementiert sein wird.

Ich wünsche ebenfalls ein schönes Wochenende.

Beste Grüße
Markus

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 12.07.2021, 20:23
von moere22
Hallo Markus,

hattest Du Probleme mit deiner Woltlab Sicherung/Wiederherstellung das du das utf8mb4 Format benötigst?
Ich habe auch ein Woltlab Forum und sichere seit Jahren mit MyOOS und utf8 . Beim Wiederherstellen der DB hatte ich nie Umlautfehler. Auch die Smileys sind in allen hergestellten Foren wieder vorhanden.

Also ich möchte nur verstehen, was nun der Vorteil sein sollte und welche Auswirkungen das zuküftig auf meine Sicherungen hat?

Danke und Gruß
Moere

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 12.07.2021, 23:26
von r23
moere22 hat geschrieben: 12.07.2021, 20:23 Also ich möchte nur verstehen, was nun der Vorteil sein sollte und welche Auswirkungen das zukünftig auf meine Sicherungen hat?
Aktuelle Software Projekte verwende in der Regel den Zeichensatz utf8mb4. (WordPress usw). MySQL verwendet diesen Zeichensatz seit Version 5.5.3.

MySQL 5.5.x wurde Ende 2010 veröffentlicht. InnoDB wurde zur Standard-Speicherengine. Die Performance wurde durch die Nutzung von asynchronem I/O verbessert.

Heise schrieb 20.09.2010
https://www.heise.de/ix/meldung/Erster- ... 81772.html

Der Zeichensatz utf8 [/ utf8mb3] verwendet maximal drei Bytes pro Zeichen und enthält nur BMP-Zeichen. Der Zeichensatz utf8mb4 verwendet maximal vier Bytes pro Zeichen und unterstützt zusätzliche Zeichen.

Wenn man eine etwas über 10 Jahre alte Datenbank (also MySQL vor 5.5.3) verwendet - sollte man bei der Sicherung UTF-8 oder den passenden Zeichensatz wählen.

Bei aktuellen Projekten ist utf8mb4 in der Regel die bessere Wahl.

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 13.07.2021, 00:28
von moere22
Okay, dann verstehe ich das also so , mein Hoster hat eine MySQL 5.7.33 DB und von Woltlab hab ich die aktuellste Version im Einsatz. Dann wäre es also besser, dass ich mit dem Zeichensatz utf8mb4 ein Backup erstelle.

Also wenn ich das richtig verstehe, habe ich also keine Nachteile wenn ich ab sofort mit dem aktuellen Standard sichere - richtig?

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 13.07.2021, 14:51
von r23
moere22 hat geschrieben: 13.07.2021, 00:28 Woltlab hab ich die aktuellste Version im Einsatz.
WoltLab ist eine proprietäre Software. Wir bieten keinen Support für proprietäre Software.

Das MyOOS Projekt verwendete aber einige Jahre die Forensoftware selber. Und aus Erinnerung war der gewählte Zeichensatz kein Problem.

moere22 hat geschrieben: 13.07.2021, 00:28 Also wenn ich das richtig verstehe, habe ich also keine Nachteile wenn ich ab sofort mit dem aktuellen Standard sichere - richtig?
Bei der Datensicherung wählt man den verwendeten Zeichensatz aus. Der MyOOS Dumper holt die Liste der vorhandenen Zeichensätze vom Server ab.

Zeichensatz X nach utf8 oder utf8mb4 ist keine gute Idee.
Zeichensatz utf8mb4 nach utf8 ist keine gute Idee. (Dieser Fehler war mit MyOOS Dumper leicht möglich - und darum geht es hier)


utf8mb4 ist 2021 in der Regel eine gute Wahl.

Re: Kann der MyOOS Dumper zwischen utf8mb4 und utf8 unterscheiden?

Verfasst: 14.07.2021, 17:30
von Webmark
moere22 hat geschrieben: 12.07.2021, 20:23 Hallo Markus,
hattest Du Probleme mit deiner Woltlab Sicherung/Wiederherstellung das du das utf8mb4 Format benötigst?

Hallo Moere,

ich habe deine Frage erst jetzt gelesen...

Ich habe ein Forum mit der aktuellen WoltLab Suite und da ist der Zeichensatz utf8mb4 zwingend.

In den bisherigen Versionen des MyOOS Dumper konnte man diesen Zeichensatz zwar zur Sicherung auswählen bei "Standardkodierung des MySQL-Servers: " stand aber utf8, was zur Folge hat, dass im Falle einer Wiederherstellung die Codierung utf8 und nicht utf8mb4 ist.

Mit der heute veröffentlichten Version 5.0.9 wird nun der korrekte Zeichensatz gewählt.