这是 因为mysql的默认字符集为latinl导致的
我的mysql版本为5.7.32
配置了my.ini
发现无用
my.ini 内容
[client]
port=3306
default-character-set=utf8
[mysqld]
port=3306
character_set_server=utf8
#解压目录
basedir=D:\mysql-5.7.32-winx64
#解压目录下data目录
datadir=D:\mysql-5.7.32-winx64\data
[WinMySQLAdmin]
D:\mysql-5.7.32-winx64\bin\mysqld.exe
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
所以我决定重启服务 重新配置一下
然后我关闭服务 net stop mysql
再次启动服务 net start mysql 报错
发现把配置文件删除了 就可以重新启动服务
但是没有配置文件 就无法修改变量
解决办法:
1.删除服务
mysqld -nt -remove
2.重新安装同时指定配置文件
mysqld --install MySQL --defaults-file=“D:\mysql-5.7.32-winx64\my.ini”
3.启动服务
net start mysql
查看全局变量
SHOW GLOBAL VARIABLES LIKE “char%”
都改为utf8了
注意:如果你之前已经创建的数据库和表肯定默认编码肯定还是latinl,还是需要你手动修改一下,按照我上面的方法做完后再创建一个数据库,和创建的新数据库和库里的表都是默认utf8了。
新的库新的表默认编码都是utf8