MySQL’s utf32
and utf8mb4
(as well as standard UTF-8) can directly store any character specified by Unicode; the former is fixed size at 4 bytes per character whereas the latter is between 1 and 4 bytes per character.
utf8mb3
and the original utf8
can only store the first 65,536 codepoints, which will cover CJVK (Chinese, Japanese, Vietnam, Korean), and use 1 to 3 bytes per character.
utf16
uses 2 bytes for the first 65,536 codepoints, and 4 bytes for everything else.
As for fonts, that’s strictly a visual thing.
“The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)”
See also MySQL documentation for Unicode support.