我已经设置了一个CloudSQL实例,我尝试在AppEngine上使用我的Django应用程序。我已经证实,服务器设置为使用utf8mb4
字符通过CLOUDSQL控制台设置为我的数据库:无法在AppEngine上使用CloudSQL的utf8mb4字符集Python
utf8mb4 utf8mb4_unicode_ci
如果我直接用mysql的CLI连接,我可以成功地插入和读取的表情符号。但是,如果我通过Django管理员插入相同的表情符号,它只是插入为“????”。
我试图确保MySQLdb的-python的客户端使用utf8mb4有:
'ENGINE': 'django.db.backends.mysql',
...
'OPTIONS': {
'charset': "utf8mb4",
}
但是,这使我获得AppEngine上出现以下错误:
(2019, "Can't initialize character set utf8mb4 (path: /usr/local/mysql/share/charsets/)")
我的app.yaml是使用“最新”的MySQLdb库:
libraries:
- name: MySQLdb
version: "latest"
同样确切的问题,请如果您发现解决方案,请在此处填写。谢谢。 –
你有没有找到这个解决方案?我试过MySQLdb(1.2.5)远程连接,它工作正常,它让我相信GAE上的libmysqlclient太旧了,是真正的问题。我即将放弃。 – jturmel