无法将 utf8mb4 存储在 mysql

unable to store utf8mb4 in mysql

我在 mysql 中使用 django。我想将我的 unicode utf8 更改为 utf8mb4 以存储表情符号。我确实尝试更改了一些字段。这是变量-

mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 
 'collation%';
+--------------------------+--------------------+
| Variable_name            | Value              |
+--------------------------+--------------------+
| character_set_client     | utf8mb4            |
| character_set_connection | utf8mb4            |
| character_set_database   | utf8mb4            |
| character_set_filesystem | binary             |
| character_set_results    | utf8mb4            |
| character_set_server     | utf8               |
| character_set_server     | utf8               |
| character_set_system     | utf8               |
| collation_connection     | utf8mb4_general_ci |
| collation_database       | utf8mb4_unicode_ci |
| collation_server         | utf8_general_ci    |
+--------------------------+--------------------+
10 rows in set (0.00 sec)

现在,当我尝试添加表情符号时,它会打印出 ? 问号。 我还更改了我的数据库和 my.cnf 文件-

DATABASES = {
    ’default’: {
        ’ENGINE’: ’django.db.backends.mysql’,
        ’NAME’: ’example’,
        ’USER’: ’example’,
        ’PASSWORD’: ’example’,
        ’HOST’: ’’,
        ’PORT’: ’’,
        ’OPTIONS’: {’charset’: ’utf8mb4’},
    }
}

和my.cnf-

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

不知何故整理服务器仍然显示 utf8 编码和整理连接显示 utf8mb4_general_ci

已解决。如果有人知道要在模型字段中使用的 django 中的任何表情符号选择器,请告诉我。