dedlfix: Warum man nicht 'uft8' in MySQL verwenden sollte

Beitrag lesen

Tach!

… sondern 'utf8mb4':
How to support full Unicode in MySQL databases (Mathias Bynens)

Nunja, wer's braucht.

Was will er eigentlich in Schritt 5? Erst redet er davon, alle SET-NAMES-Statements in den Client-Codes anzupassen und dann definiert er

[mysqld]
character-set-client-handshake=FALSE
init-connect='SET NAMES utf8mb4'

Nach meinem Verständnis dürften dann die Clients gar keine Zeichenkodierung mehr aushandeln können. Allerdings konnte ich bei mir keine Auswirkungen der ersten Zeile erkennen, auch nicht in anderen Schreibweisen. Und das init-connect muss er auch nicht explizit aufführen, das ist durch character-set-server bereits auf diesen Wert voreingestellt. Die Zeichenkodierung im init-connect zu setzen ist nur notwendig, wenn der Server-Default-Wert ein anderer ist als die Clients voreingestellt bekommen sollen. Beispielsweise kann ein Szenario dafür sein, dass man gern UTF-8 als Default haben will, aber unveränderliche Clients hat, die von Latin1 ausgehen und auch keine Anstalten einer individuellen Aushandlung machen.

dedlfix.