Page 1 of 1

MySQL 4 Byte

Posted: Wed 25. Mar 2020, 15:37
by juliengie
Hallo,

Ich möchte MySQL 4-byte Unterstützung aktivieren wegen Nextcloud,
JEDOCH steht dort dass man bei mysqldump die Argumente "--default-character-set=utf8mb4" hinzufügen muss,
nun stellt sich mir die Frage, ob KeyHelp zum sichern der Datenbanken mysqldump benutzt?

(siehe https://docs.nextcloud.com/server/17/ad ... pport.html)

Dankee

[Mod-Edit]
Verschoben nach Off Topic, da es hier um Spezifika zu einer Drittsoftware geht und nicht direkt um Keyhelp.

Re: MySQL 4 Byte

Posted: Wed 25. Mar 2020, 15:51
by Jolinar
Ich hab den verlinkten Text jetzt nur überflogen...aber die Notwendigkeit des Parameters scheint nur bei Verwendung von MySQL relevant zu sein.
Da Keyhelp standardmäßig MariaDB einsetzt, dürfte sich die Frage nicht stellen.

Unabhängig davon setzen viele der Keyhelp-Admins, die hier unterwegs sind, Nextcloud ein und haben bisher noch nicht über Probleme in dieser Richtung berichtet.

Re: MySQL 4 Byte

Posted: Wed 25. Mar 2020, 16:42
by derFu
Die Meldung ist bei NextCloud auch mit MariaDB 10.3 präsent, da es dabei aber nur um Emojis geht und das Fehlen der 4-Byte-Unterstützung sonst keine Auswirkungen hat, habe ich es immer ignoriert.

Re: MySQL 4 Byte

Posted: Wed 25. Mar 2020, 21:56
by mrbird
ich habs über shell so geändert:

Code: Select all

php occ config:system:set mysql.utf8mb4 --type boolean --value="true"

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 08:06
by Reseller4711
derFu wrote: Wed 25. Mar 2020, 16:42 Die Meldung ist bei NextCloud auch mit MariaDB 10.3 präsent, da es dabei aber nur um Emojis geht und das Fehlen der 4-Byte-Unterstützung sonst keine Auswirkungen hat, habe ich es immer ignoriert.
Dito ;-)

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 09:07
by select name from me;
derFu wrote: Wed 25. Mar 2020, 16:42 Die Meldung ist bei NextCloud auch mit MariaDB 10.3 präsent, da es dabei aber nur um Emojis geht und das Fehlen der 4-Byte-Unterstützung sonst keine Auswirkungen hat, habe ich es immer ignoriert.
Die Frage ob Keyhelp bei der Sicherung das unterstützt finde ich wichtig. Falls nicht, können sehr blöde Dinge passieren.
Z.B. werden beim Insert alle Zeichen nach einem 4byte Zeichen (z.B. Emoji) verworfen, wenn ich mich richtig erinnere.

Das sollte man einfach testen können.

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 09:46
by Jolinar
Hier sollte man mal einen Blick in die entsprechende Doku werfen...
--default-character-set=name
Set the default character set to name. If no character set is specified, until MariaDB 10.3.11, mysqldump uses utf8, and from MariaDB 10.3.11, uses utf8mb4.

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 12:09
by select name from me;
Jolinar wrote: Thu 26. Mar 2020, 09:46 Hier sollte man mal einen Blick in die entsprechende Doku werfen...
In der Doku von MariaDB kann man jedoch nicht feststellen, welche Parameter Keyhelp übergibt. ;)

Folgende Parameter werden, soweit ich das sehe, an mysqldump übergeben:

Code: Select all

--skip-lock-tables --routines
Die Version ist aktuell auf meinem Testsystem 10.1.44.

Ich habe ein Backup mit Emoji erstellt, die Tabelle gelöscht und wieder eingespielt. Passt.

Also - alles gut. :)

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 12:16
by Jolinar
select name from me; wrote: Thu 26. Mar 2020, 12:09 In der Doku von MariaDB kann man jedoch nicht feststellen, welche Parameter Keyhelp übergibt. ;)
Da hast du natürlich recht. Wenn KH explizit den Parameter "utf8" übergeben würde, dann wäre das Backup tatsächlich fehlerhaft. 8-)

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 12:21
by Tobi
Dann kann aber was nicht stimmen...

Wenn du Version 10.1.44 verwendest müsste gem. Doku doch eigentlich "utf8" verwendet werden.

Keyhelp übergibt aber keinen Zeichensatz-Parameter und trotzdem werden die Icons korrekt wiederhergestellt?

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 18:21
by derFu
Tobi wrote: Thu 26. Mar 2020, 12:21 Dann kann aber was nicht stimmen...

Wenn du Version 10.1.44 verwendest müsste gem. Doku doch eigentlich "utf8" verwendet werden.

Keyhelp übergibt aber keinen Zeichensatz-Parameter und trotzdem werden die Icons korrekt wiederhergestellt?
Vielleicht hängt es damit zusammen, dass bei MariaDB in mysqldump die Option "--opt" standardmäßig aktiv ist, die beinhaltet "set-charset" und das wiederum setzt "SET NAMES <<default_character_set>>' in jeden Dump.
<<default_character_set>> ist unter Debian und Ubuntu utf8mb4 (im Gegensatz zu dem Standard latin1 in anderen Distros).
Bin einfach mal davon ausgegangen, dass das reicht, und bin eigentlich gar nicht auf die Idee gekommen, dass Keyhelp noch ein --default-character-set übergeben könnte... :lol:

Re: MySQL 4 Byte

Posted: Thu 26. Mar 2020, 19:48
by Tobi
Ah!
Danke Thorsten.

Dann sollte ich gleich Mal mein SQL-Backup überprüfen...

Re: MySQL 4 Byte

Posted: Fri 27. Mar 2020, 07:22
by select name from me;
Tobi wrote: Thu 26. Mar 2020, 12:21 Dann kann aber was nicht stimmen...

Wenn du Version 10.1.44 verwendest müsste gem. Doku doch eigentlich "utf8" verwendet werden.

Keyhelp übergibt aber keinen Zeichensatz-Parameter und trotzdem werden die Icons korrekt wiederhergestellt?
Ja, ich habe mich auch gewundert. Aber nach dem Keyhelp Backup und Restore der Tabelle waren allen Emoji korrekt in der Datenbank vorhanden. ¯\_(ツ)_/¯

Ich denke, es lohnt sich das mit den eigenen Projekten zu testen.