Varchar 255; max key length is 767 bytes

Ich habe schon wieder herumgoogeln müssen, weil ich mich nicht mehr daran erinnern konnte, warum ich keinen Index auf einer MySQL-Tabelle auf einer Spalte mit varchar(255) anlegen konnte.

Die Fehlermeldung

Specified key was too long; max key length is 767 bytes

bei einem Varchar(255) hatte ich schon mal gesehen, aber leider wieder vergessen.

Damit ich es mir selber besser merke:

Ein Varchar(255) hat nur z.B. bei latin1 eine Größe von 255 Bytes.
Bei UTF8 werden bis zu 3 Bytes pro Zeichen und bei utf8mb4 werden bis zu 4 Bytes pro zeichen belegt.

255*4=1020 > 767

Dann werde ich die SQL-Spaltendefinition auf Varchar(191) ändern und dann prüfen ob das Resourcespace simpleldap Plugin noch funktioniert.

Wenn nicht, werde ich vermutlich etwas umschreiben müssen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.