如何将AsyncMysqlClient
(或AsyncMysqlConnection
,我不确定其中哪一个)的排序规则更改为utf8
?
我阅读了文档,但是我找不到任何更改字符集的方法。如果它真的存在,我可能会错过它。
答案 0 :(得分:1)
认为您必须尝试通过AsyncMysqlClient-> connect来更改连接上的charset?
答案 1 :(得分:1)
出于某种原因,我们实际上没有公开在API中设置异步连接编码的方法。从技术上讲,可以使用AsyncMysqlClient::adoptConnection通过MySQLi创建连接并在将编码传递给异步系统之前设置编码,但我不建议这样做。
相反,按照建议here,您可以通过SQL显式设置连接的编码:
SET collation_connection = utf8mb4_unicode_ci;
SET NAMES utf8;
如果您可以访问MySQL服务器本身的配置,则可以使用init_connect
使语句在每个非根连接的开头运行:
[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