Azure mysql 连接重定向更改编码

Azure mysql connection redirection changes encoding

我使用连接到 Azure 中的 mysql 的 php 应用程序。我使用 utf8mb4 作为编码,utf8mb4_unicode_ci 作为排序规则。

当我在没有连接转发的情况下连接到 Mysql 时一切正常。 当我按照 here 所述在 php.ini 中启用连接转发时,我在处理数据库查询结果时收到有关格式错误的 UTF-8 字符的错误。连接转发是否有可能改变编码?如果是,我可以以某种方式禁用它吗?

在将 lib 与 PDO 一起使用时,这似乎是 Bug。 连接字符串中的字符集被简单地忽略了。

可以通过使用 SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci 作为 PDO::MYSQL_ATTR_INIT_COMMAND

来解决