如何将AsyncMysqlClient
(或AsyncMysqlConnection
,我不确定其中哪一个)的排序规则更改为utf8
?
我阅读了文档,但找不到任何更改字符集的方法。我可能会想念它,如果它真的在那里。
如何将AsyncMysqlClient
(或AsyncMysqlConnection
,我不确定其中哪一个)的排序规则更改为utf8
?
我阅读了文档,但找不到任何更改字符集的方法。我可能会想念它,如果它真的在那里。
认为您必须尝试更改通过 AsyncMysqlClient->connect 获得的连接上的字符集?
出于某种原因,我们实际上并没有公开一种在API中设置异步连接编码的方法。从技术上讲,可以使用AsyncMysqlClient::adoptConnection通过 MySQLi 创建连接并在将其传递给异步系统之前设置编码,但我不建议这样做。
相反,正如这里所建议的,您可以通过 SQL 显式设置连接的编码:
SET collation_connection = utf8mb4_unicode_ci;
SET NAMES utf8;
如果您有权访问 MySQL 服务器本身的配置,则可以使用init_connect
在每个非 root 连接的开头运行语句:
[mysqld]
init_connect='SET collation_connection = utf8mb4_unicode_ci; SET NAMES utf8;'
default-character-set=utf8
character-set-server=utf8
collation-server=utf8mb4_unicode_ci