码迷,mamicode.com
首页 > 数据库 > 详细

解决MySQL中文乱码

时间:2019-04-26 12:44:19      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:默认   def   nbsp   back   top   32位   启动   etc   令行   

环境:win10,  Server version: 5.7.25 MySQL Community Server (GPL)

1. 中文乱码

无法插入中文字符,显示该条错误

技术图片

2. 查看数据库编码

技术图片

这里需要把这两项修改为 utf8 格式

3. 设置数据全局范围

修改 mysql 配置文件 /etc/my.cnf。(这里添加没有的数据就行了,不必改为一致,不然可能启动不了数据库)

[mysqld]

character-set-server=utf8

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

重启数据库

管理员运行:

     net stop mysql

     net start mysql

这里查看字符集

技术图片

但是有些人修改成功后依然添加不了中文

4. 修改命令行默认编码

在cmd中运行 chcp,这里当时我显示的是936


注:CHCP是一个计算机指令,能够显示或设置活动代码页编号。

     代码页 描述

      65001   UTF-8代码页

      950 繁体中文

      936 简体中文默认的GBK

      437 MS-DOS 美国英语

这里需要修改一下命令行的默认编码,设置为 65001

在运行中通过regedit进入注册表

找到HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe

新建一个 DWORD(32位值),命名为CodePage,值设为65001

已有CodePage的话,修改它,改为十进制,65001

5.注意:

这里如果你创建新表,添加中文,是完全可以的,但是原有数据表依然无法插入。我刚用数据库就直接删表重建了,

若还有其他方法改正,希望大佬指出,感谢!

解决MySQL中文乱码

标签:默认   def   nbsp   back   top   32位   启动   etc   令行   

原文地址:https://www.cnblogs.com/brood/p/10773633.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!