utf8_general_ci is a very simple — and on Unicode, very broken — collation, one that gives incorrect results on general Unicode text.
What it does is:
- converts to Unicode normalization form D for canonical decomposition
- removes any combining characters
- converts to upper case
This does not work correctly on Unicode, because it does not understand
Unicode casing. Unicode casing alone is much more complicated than an
ASCII-minded approach can handle. For example: