MySQL добавил этот код utf8mb4 после 5.5.3, Mb4 - это максимальное значение 4 байта, специально разработанное для совместимости с четырехбайтовым Unicode. К счастью, UTF8MB4 является расширенным набором UTF8, за исключением того, что нет необходимости преобразовывать кодировку в UTF8MB4. Конечно, для экономии места достаточно общего использования UTF8.
Исходный формат UTF-8 использует от одного до шести байтов и может кодировать максимум 31 символ. Последняя спецификация UTF-8 использует от одного до четырех байтов и может кодировать до 21 бита только для представления всех 17 плоскостей Unicode. UTF8 - это набор символов в Mysql, который поддерживает не более трех байтов символов UTF-8, которые являются базовой многотекстовой плоскостью в Юникоде.
Чтобы сохранить символы UTF-8 длиной 4 байта в Mysql, вам необходимо использовать набор символов UTF8MB4, но только 5.5. После того, как поддерживаются 3 версии (Просмотр версии: Выбрать версию ();). Я думаю, что для лучшей совместимости всегда следует использовать UTF8MB4 вместо UTF8. Для данных типа char UTF8MB4 занимает больше места и, согласно официальной рекомендации Mysql, использует VARCHAR вместо char.
В MariaDB utf8mb4 в качестве CHARSET по умолчанию, если он не установлен явно в конфигурации сервера, поэтому используется COLLATE utf8mb4_unicode_ci.
Обратитесь к MariaDB CHARSET и COLLATE Click
CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
person
AppCloudData
schedule
22.07.2020