MySQL Добавить Custom Charset к utf8mb4, а не utf8

Мне нужно добавить пользовательский набор символов на сервер MySQL, чтобы улучшить возможности поиска, и я действительно смог это сделать, но в utf8_charset, а не в его версию mb4. и я не могу найти даже в документации MySQL ничего относительно MB4

как они упоминали в документации, я отредактировал файл /usr/share/MySQL/charsets/Index.xml и под <charset name="utf8"> Я добавил свое подмножество, так как не смог найти подмножество для utf8mb4

 <collation name="utf8_arabic_ci" id="1029">
   <rules>
     <reset>\u0627</reset> <!-- Alef 'ا' -->
     <i>\u0623</i>        <!-- Alef With Hamza Above 'أ' -->
     <i>\u0625</i>        <!-- Alef With Hamza Below 'إ' -->
     <i>\u0622</i>        <!-- Alef With Madda Above 'آ' -->
   </rules>
   <rules>
     <reset>\u0629</reset> <!-- Teh Marbuta 'ة' -->
     <i>\u0647</i>        <!-- Heh 'ه' -->
   </rules>
   <rules>
     <reset>\u0000</reset> <!-- Ignore Tashkil -->
     <i>\u064E</i>        <!-- Fatha 'َ' -->
     <i>\u064F</i>        <!-- Damma 'ُ' -->
     <i>\u0650</i>        <!-- Kasra 'ِ' -->
     <i>\u0651</i>        <!-- Shadda 'ّ' -->
     <i>\u064F</i>        <!-- Sukun 'ْ' -->
     <i>\u064B</i>        <!-- Fathatan 'ً' -->
     <i>\u064C</i>        <!-- Dammatan 'ٌ' -->
     <i>\u064D</i>        <!-- Kasratan 'ٍ' -->
   </rules>
 </collation>

и это работает как шарм, однако, я не могу изменить всю мою коллизию столбцов БД для использования с utf8mb4_unicode_ci в utf8_unicode_ci или даже заказной мой utf8_arabic_ci

1 ответ

Я думаю, вам нужно будет добавить совершенно новую кодировку, см. https://dev.mysql.com/doc/refman/8.0/en/ldml-collation-example.html .

      <charset name="utf8mb4">
  ...
  <collation name="utf8mb4_phone_ci" id="1029">
    <rules>
      <reset>\u0000</reset>
      <i>\u0020</i> <!-- space -->
      <i>\u0028</i> <!-- left parenthesis -->
      <i>\u0029</i> <!-- right parenthesis -->
      <i>\u002B</i> <!-- plus -->
      <i>\u002D</i> <!-- hyphen -->
    </rules>
  </collation>
  ...
</charset>
Другие вопросы по тегам