sql >> Database teknologi >  >> Database Tools >> phpMyAdmin

Hvorfor er tabel CHARSET sat til utf8mb4 og COLLATION til utf8mb4_unicode_520_ci

Tidligere var der kun utf8; i fremtiden, utf8mb4 vil være standardtegnsættet. nu utf8mb4 er standardtegnsættet.

Tidligere _general_ci var standardsorteringen; derefter _unicode_ci (Unicode 4.0) var bedre end _unicode_520_ci (Unicode 5.20). I fremtiden (MySQL 8.0) vil standarden være _0900_ci_ai (Unicode 9.0).

I mellemtiden er vejen fuld af huller genereret af MySQL's tidligere fejl. Og WP-designere kører i en stor tank, der ikke bemærker hullerne.

MySQL 5.6 var et stort hul, der opslugte mange WP-brugere på grund af en grænse på 767 på indekser sammen med WP-indekser på den alt for lange VARCHAR(255) og muligheden for at bruge utf8mb4 . Du er langt forbi det ved at have 5.7.17. (Dit fremtidige skift til 8.0 vil være mindre ujævnt.)

Det vil sige, at nyoprettede databaser/tabeller/kolonner på 5.7.7+ ikke skulle opleve 767-problemet, men ting migreret fra ældre versioner (5.5.3+) kan have problemer, især hvis noget får dig til at skifte til utf8mb4.

Hvad skal man gøre? Jeg løber nok tør for plads, når jeg prøver at udtænke alle mulighederne. Så angiv historikken for dataene, opgraderingsstien (hvis nogen), de aktuelle indstillinger, ROW_FORMAT af tabellerne, CHARACTER SET og COLLATION af kolonnerne, outputtet af SHOW VARIABLES LIKE 'char%';

Hvor skal du være? For 5.7.7+, utf8mb4 og utf8mb4_unicode_520_ci hvor det er praktisk. Det tegnsæt giver dig Emoji og hele kinesisk (utf8 gør ikke). Denne sortering er den bedste tilgængelige, selvom du kan være svært presset på at lægge mærke til, hvor det betyder noget.

Bemærk:den første del af sorteringsnavnet er det eneste tegnsæt, det fungerer med. Det er utf8_unicode_ci virker ikke med utf8mb4 .




  1. Hvordan opgraderer man phpMyAdmin i XAMPP til nyeste?

  2. #1146 - Tabel 'phpmyadmin.pma__tracking' eksisterer ikke

  3. MySQL sorterer efter en kolonne som standard i phpMyAdmin

  4. MySQL Workbench går ned ved start på Windows