mysql 5.6 乱码_MySql 5.6.20乱码问题的解决

本文参考了晚上的很多解决方案,发现大多都不太好用,我自己在我的机器上调试成功,把方法分享给大家。

本文解决了从JSP页面中像数据库中写中文,出现乱码问题,采用的格式是UTF-8编码方式(应该还有其他的编码方式);

1、打开命令提示符,依次输入以下命令:

net start mysql

mysql

show variables like '%char%';

显示以下结果:

+--------------------------+------------------------------+ | Variable_name            | Value                        | +--------------------------+------------------------------+ | character_set_client     | latin1                       | | character_set_connection | latin1                       | | character_set_database   | latin1                       | | character_set_filesystem | binary                       | | character_set_results    | latin1                       | | character_set_server     | latin1                       | | character_set_system     | utf8                         |

mysql和字符集有关的变量character_set_client:客户端请求数据的字符集

character_set_connection:从客户端接收到数据,然后传输的字符集

character_set_database:默认数据库的字符集,无论默认数据库如何改变,都是这个字符集;如果没有默认数据库,那就使用 character_set_server指定的字符集,

这个变量建议由系统自己管理,不要人为定义。

character_set_filesystem:把os上文件名转化成此字符集,即把 character_set_client转换character_set_filesystem, 默认binary是不做任何转换的

character_set_results:结果集的字符集

character_set_server:数据库服务器的默认字符集

character_set_system:这个值总是utf8,不需要设置,是为存储系统元数据的字符集

假如我们要想设定的字符集是utf8的话,步骤如下:

1)修改配置文件

在[client]下添加如下参数,影响系统变量character_set_client和character_set_connection和character_set_results

default-character-set=utf8

--------------------------------------------------在mysql 5.6.20版本里不好用--------------------------------------

在[mysqld]下添加如下参数,影响系统变量character_set_server和character_set_database

default-character-set=utf8

-------------------------------------------------------------------------------------------------------------------------

--------------------------------------------------------我成功的写法------------------------------------------------

[mysqld]

character-set-server=utf8

------------------------------------------------------------------------------------------------------------------------

设置完后,启动mysql,我们只需要查看系统变量是否符合我们的要求即可

character_set_client

character_set_connection

character_set_database

character_set_results

character_set_server

如下三个系统变量不需要关心,不会影响乱码

character_set_filesystem

character_set_system

character_sets_dir

修改结果: mysql> show variables like '%char%'; +--------------------------+------------------------------+ | Variable_name            | Value                        | +--------------------------+------------------------------+ | character_set_client     | utf8                         |  | character_set_connection | utf8                         |  | character_set_database   | utf8                         |  | character_set_filesystem | binary                       |  | character_set_results    | utf8                         |  | character_set_server     | utf8                         |  | character_set_system     | utf8                         |  然后添加数据就没有乱码问题了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值