字符集不匹配错误:服务器发送未知字符集 (255)
尝试使用 PDO 从 Symfony 3 连接到 MySQL 数据库会导致以下错误:PDO::__construct():服务器向客户端发送了未知的字符集 (255)。请向开发商举报。此错误可能是由于服务器和客户端之间的字符集不匹配而发生。
原因
在 MySQL 8 中,默认字符集已更改为 utf8mb4。但是,某些客户端(例如 PDO)可能无法识别此字符集。当服务器将其默认字符集发送给客户端,而客户端无法识别时,就会抛出该错误。
解决方案
建议的解决方案是升级客户端软件升级到支持utf8mb4字符集的版本。但是,在可以升级之前,存在解决方法:
解决方法
将服务器的字符集更改为 utf8 以与未升级的客户端兼容。为此,请将以下设置添加到 /etc/my.cnf 文件并重新启动 MySQL 服务器:
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] collation-server = utf8_unicode_ci character-set-server = utf8
以上是MySQL PDO 连接错误:如何解决'服务器发送的字符集 (255) 客户端未知”?的详细内容。更多信息请关注PHP中文网其他相关文章!