MySql中文输入乱码问题
在数据库开发时经常会出现中文数据插入时报错,在这里记录一下自己的解决方法,这里总共尝试了两种方法:
方法一——修改mysql中的配置文件
这里我使用的是docker中的mysql:5.7,依次执行了下述语句
- 查看当前正在运行的docker容器
docker ps
查看当前正在运行的容器
- 进入目标容器内部
docker exec -it mysql01 bin/bash
- 进入mysql数据库配置文件地址
cd /etc/mysql/mysql.conf.d
,docker中mysql的配置文件都在该目录下,这里需要下载vim插件(下载过程略去) - 使用vim打开该目录下的mysqld.cnf文件
vim mysqld.cnf
- 修改配置文件内容,将[mysqld]修改成如下内容
- 重启docker的mysql容器即可生效
重启之后在此进入该容器内部查看修改成功的字符集
- 进入数据库内部
mysql -u root -p book
,我这里数据库名为book - 查看当前字符集
show variables like '%character%';
可以看到数据库字符集成功被更改
方法二:使用Navicat修改某个表格的编码格式
中文数据插入出现问题的原因很多时候是因为表格的字符集出问题,这里通过Mac中的Navicat for MySQL来解决问题。
这里只需要找到希望修改的表格
将下面两个字符集修改称为utf-8即可
最后别忘了保存!