| 声明:菜鸟刚学没啥技术,找了许久这样解决了。 win10平台 linux环境不知道 
 一、首先连接数据库输入以下命令 show variables like "%chara%"; 
    目标就是修改成上图样子 我们看一下每行代表什么 character_set_client :客户端数据使用字符集 character_set_connection:连接数据库时使用的字符集,如果程序没有指定编码则使用这个编码 character_set_database:当前数据库使用的字符集 character_set_filesystem:文件系统的编码格式,把os上的文件名转化成此字符集,默认binary不做任何转换的。(不影响乱码) character_set_results:查询结果字符集也就是数据库给客户端返回时的编码 character_set_server:默认内部操作字符集也就是服务器安装时指定的默认编码 character_set_system:系统元数据(字段名等)字符集 (不影响乱码) character_sets_dir:看不懂,也不用改(不影响乱码) 
  注意: set character_set_XXX = “uft8”; 该语句不是永久有效,只对当前连接有效,所以最有效的就是修改本地 my.ini 文件 二、找到本地my.ini文件 (在这刚好推荐一个本地文件检索工具  软件名:everything ) 查询文件超级快 
 找到文件后打开 找到下面三个地方 ① [mysql]no-beep
 # default-character-set=utf8 ② [mysqld]character-set-server=utf8(一般这边没有这条语句先找③那个)
 ③ # The default character set that will be used when a new schema or table is# created and no character set is defined
 # character-set-server=utf8(把这句话复制到第二条位置)
   三、修改表的字符集,重启服务 这是修改表的字符集语句(login换成你想修改的表) alter table login convert to character set utf8;
  win+R键输入 
 找到mysql服务重启 重启后输入以下语句查询是否更改成功 show variables like "%chara%"; 
 还有注意在连接的时候选择使用MySQL字符集,不然白改了 
 四、测试 这是修改之前 
 修改之后 
 五、OK问题解决,开始喝茶 |