近期项目使用到mysql。却突然出现了中文乱码问题。尝试了多种方案,最终解决乱码问题,总结一下解决方式,给遇到同样问题的人一点參考。

中文乱码的原因

1.安装mysqlserver的时候编码集设定有问题

2.创建数据库的时候编码集设定有问题

3.创建表的时候编码集设定有问题

4.client的编码集设定有问题

能够通过命令查看编码集:

show variables like "%char%";

经常使用编码集

1.java中的经常使用编码UTF-8;GBK;GB2312;ISO-8859-1;

2.相应mysql数据库中的编码utf8;gbk;gb2312;latin1

建议使用utf8格式,utf8能够兼容世界上全部字符

mysql编码集设置命令

注意:假设不是通过my.ini配置文件设置的内容,仅仅在当前状态下有效,当重新启动数据库服务后失效。所以假设想要不出现乱码仅仅有改动my.ini文件,数据库编码能够在创建数据库时候指定UTF8

mysql设置编码命令

SET character_set_client = utf8;

SET character_set_connection = utf8;

SET character_set_database = utf8;

SET character_set_results = utf8;

SET character_set_server = utf8;

SET collation_connection = utf8_bin;

SET collation_database = utf8_bin;

SET collation_server = utf8_bin;

设定mysqlserver编码

设定mysqlserver的编码。须要又一次安装mysql服务,步骤例如以下:

1.打开命令提示符(管理员)。假设不以管理员身份执行可能会出现错误

2.进入mysql安装文件夹下的bin文件夹

3.关闭服务

net stop mysql

4.卸载

mysqld -remove

5.改动mysql的配置文件。在mysql安装文件夹下找到my.ini文件

改动配置文件,在配置文件里增加

character-set-server=utf8

贴出我的配置文件

[mysqld]

#设置字符集

character-set-server=utf8

#这里把路径改改为你的mysql安装文件夹

basedir=D:\develeper\mysql5.6

datadir=D:\develeper\mysql5.6\data

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

6.安装

mysqld -install

7.启动服务

net start mysql

创建时指定字符集

1.创建数据库时设定字符集

create database testdb default character set utf8;#建立数据库

2.创建表时设定字符集

use testdb;

create table student(

id char(50) primary key,

sname varchar(100) not null,

age int

)engine=innodb default charset=utf8;

3、client字符集的设定。通过连接字符串来设定。

jdbc:mysql://localhost:3306/testdb?

characterEncoding=utf8

mysql中文乱码解决_mysql中文乱码解决方式相关推荐

  1. mysql中文乱码解决方案_Mysql中文乱码解决方案

    Mysql中文乱码解决方案 时间:2017-07-11     来源:华清远见JAVA学院 中文乱码问题一直是我们编程过程中比较常见又让人头疼的问题,但是只要按照标准进行配置,就能很好的避免出现中文乱 ...

  2. mysql中出现乱码问题_Mysql中文乱码问题完美解决方案

    MySQL会出现中文乱码的原因不外乎下列几点: 1.server本身设定问题,例如还停留在latin1 2.table的语系设定问题(包含character与collation) 3.客户端程式(例如 ...

  3. mysql 支持中文的字符集_MySQL 中文显示乱码

    最近关于中文显示乱码的贴子比较多,所以也做了个总结: 不同的编码格式会导致同一字符,在不同字符集下的编码会不同.同样同一编码在不同的字符集中代码的字符也不相同.当你的MySQL返回的字符串的编 码格式 ...

  4. mysql 乱码 越南_mysql数据库乱码之保存越南文乱码解决方法

    我自己测试一下,很多字符变成了 '?'. 数据库连接已经是使用了 utf8 字符集: 复制代码 代码如下:define("MYSQL_ENCODE", "UTF8&quo ...

  5. mysql 57授权失败_MYSQL教程完美解决mysql客户端授权后连接失败的问题

    <MYSQL教程完美解决mysql客户端授权后连接失败的问题>要点: 本文介绍了MYSQL教程完美解决mysql客户端授权后连接失败的问题,希望对您有用.如果有疑问,可以联系我们. MYS ...

  6. mysql -u 报错_MySQL报错解决!

    大家好:我是小狼,最近工作一直瞎忙,没时间写东西,终于有点时间了,现在我正在搭建extmail服务器,文档是参考这里:http://www.extmail.org/forum/thread-7002- ...

  7. mysql 提交乱码问题_mysql数据库乱码问题

    变量 @a 的字符编码是由参数 CHARACTER_SET_CLIENT 决定的,假设此时编码为 A,也就是变量 @a 的编码. 2. 写入语句在发送到 MySQL 服务端之前的编码由 CHARACT ...

  8. mysql死锁如何释放_mysql 死锁:如何解决mysql死锁

    1. session1 执行 delete  会在唯一索引 c2 的 c2 = 15 这一记录上加 X lock(也就是在MySQL 内部观测到的:X Lock but not gap): 2. se ...

  9. mysql一直拒绝登录_mysql 拒绝登录解决

    一大早打开Navicat Lite for MySQL客户端,提示1045 access denied for user 'root'@'localhost' using password yes,太 ...

最新文章

  1. java大会主题曲_网易未来大会主题曲发布,从创作到演唱都由AI包办
  2. C++ 二维数组和指针数组
  3. leetcode 347. Top K Frequent Elements | 347. 前 K 个高频元素(大根堆)
  4. Date和Calendar
  5. chrome插件 实现微博言论监控
  6. 《Android测试的学习笔记》——Introduction
  7. 摘录Xcode 交叉开发编程中选项
  8. VMware vSphere 服务器虚拟化之十八桌面虚拟化之安装View Composer服务器
  9. 网络重置或电脑重置后WLAN/WIFI图标不显示 最全解决方法
  10. 运算符和强制类型转换
  11. python做游戏怎么实现窗口_pygame游戏之旅 创建游戏窗口界面
  12. 关于web站点的欢迎界面
  13. 五层体系结构特点及其功能
  14. 工作奇谈——使用对称密匙加密数据
  15. AsyncTask是什么
  16. C3D复现出现的问题及其解决方法
  17. 3400位造型师,80位大数据科学家,这家美国女装公司这么做个性化定制
  18. varchar长度需要是2的倍数吗?
  19. C#实现共享并且建立账号(指定账号登录操作,如果是 1219错误则清除用户数据)
  20. 深圳市云海麒麟计算机系统,北京云海麒麟容错服务器解决方案

热门文章

  1. 元宇宙大火,高通实力领跑,推动XR成为下一代计算平台
  2. 安卓仿ios控制中可录屏_安卓和iOS的胜利,是来自塞班系统的失败
  3. go每日新闻(2022-06-14)——一文告诉你Go 1.19都有哪些新特性
  4. EndNote中自定义格式的符号说明
  5. php simplexml 函数,PHP中SimpleXML函数简介
  6. 什么是轮询、长轮询、长连接一篇文章让你不在懵懂 - 第412篇
  7. Windows XP操作系统试题
  8. 【WPS表格】标记出表中的重复数据,并新建工作表
  9. Datawhale第13期组队学习笔记Task3
  10. 解决AndroidStudio报错:Cannot resolve constructor ‘Intent()...‘