MySQL 8.0 参考手册 / 第 2 章安装和升级 MySQL / 2.9 从源码安装MySQL / 2.9.8 处理编译MySQL的问题 / B.3.2 使用 MySQL 程序时的常见错误 /
B.3.2.15 无法初始化字符集
如果您有字符集问题,您可能会看到这样的错误:
MySQL Connection Failed: Can't initialize character set charset_name
此错误可能由以下任何原因引起:
该字符集为多字节字符集,您在客户端不支持该字符集。在这种情况下,您需要通过运行 带有 选项的CMake来重新编译客户端。请参阅 第 2.9.7 节,“MySQL 源配置选项”。
-DDEFAULT_CHARSET=
charset_name
所有标准 MySQL 二进制文件都经过编译,支持所有多字节字符集。
字符集是一个简单的字符集,没有编译到mysqld中,字符集定义文件不在客户端期望找到它们的地方。
在这种情况下,您需要使用以下方法之一来解决问题:
重新编译支持字符集的客户端。请参阅 第 2.9.7 节,“MySQL 源配置选项”。
向客户端指定字符集定义文件所在的目录。对于许多客户,您可以使用该
--character-sets-dir
选项执行此操作。将角色定义文件复制到客户端期望它们所在的路径。