B.4.2.16 无法初始化字符集

如果您遇到字符集问题,则可能会看到这样的错误:

MySQL Connection Failed: Can't initialize character set charset_name

该错误可能具有以下任何原因:

所有标准 MySQL 二进制文件都使用-DWITH_EXTRA_CHARSETS=complex进行编译,从而支持所有多字节字符集。参见第 2.9.7 节“ MySQL 源配置选项”

  • 字符集是未编译为mysqld的简单字符集,并且字符集定义文件不在 Client 端希望找到它们的位置。

在这种情况下,您需要使用以下方法之一来解决此问题:

  • 在支持字符集的情况下重新编译 Client 端。参见第 2.9.7 节“ MySQL 源配置选项”

    • 向 Client 端指定字符集定义文件所在的目录。对于许多 Client,您可以使用--character-sets-dir选项来执行此操作。

    • 将字符定义文件复制到 Client 端期望它们的路径。