用命令docker exec -it 数据库容器名 /bin/bash 进入容器后,正常用mysql -uroot -p密码启动mysql数据库时,查看中文字段如下

查看mysql的字符编号show variables like 'character%';

(默认为latin1)问题处理:set names utf8;
(以上命令等价下面三条命令set character_set_client = utf8; set character_set_results = utf8; set character_set_connection = utf8; )
查看字符编码是否改为utf8
最后数据查询,已正常显示中文字样了

+++++++++++++++++++++
其它方法:
或直接修改数据库编码类型
alter database 数据库名 character set utf8;
创建数据库时就设置默认编码为utf8
create database 数据库名 character set utf8;
use 数据库名;
source 数据库.sql;
本文介绍在Docker容器内解决MySQL数据库中文显示乱码的方法,包括使用set names utf8命令临时更改字符集,以及通过alter database永久修改数据库编码为utf8,确保数据查询时能正常显示中文。
1377

被折叠的 条评论
为什么被折叠?



