← 所有标签

标签:utf8mb4

1 篇文章

中文变问号、表情变乱码:MySQL 字符集那点事我踩了三次才搞透
数据库运维13 min read

中文变问号、表情变乱码:MySQL 字符集那点事我踩了三次才搞透

线上昵称里带个 emoji,存进库变成 「ðŸ」;一次迁移之后,原本正常的客户备注全成了 「???」。这种字符集乱码,八成不是「数据库坏了」,而是 server、database、table、column、连接层五层字符集没对齐。MySQL 的 utf8 其实是 3 字节的假 utf8,存不了 emoji,真正能存全 Unicode 的是 utf8mb4。从现象反推根因,顺手把已经乱掉的数据救回来。