1.mysql客户端,找到/etc/mysql路径下的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_general_ci
init_connect='SET NAMES utf8mb4'
保存, service mysql restart ,检查字符集
mysql> SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';
2.设置rds参数, 在控制台 参数配置 中修改 character_set_server 参数为 utf8mb4。提交会自动重启(rds不会停止工作)
3.改库表编码:
ALTER DATABASE test_data_name CHARACTER SET=utf8mb4 COLLATE=utf8mb4_general_ci;
ALTER TABLE test_table CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
4.django配置settings, DATABASES default添加 OPTIONS': {'charset':'utf8mb4'},
如果报错,是因为python-mysqldb包版本低于1.2.5,如实apt方式安装需要先删除:apt-get remove --purge python-mysqldb
再安装:pip install mysql-python