Mysql乱码的解决

2014-11-24 11:59:29 · 作者: · 浏览: 0
Mysql乱码的解决
首先在命令行下进入mysql编辑模式输入
mysql>
show variables like 'char%'; 查看 数据库字符集设置


client、connection、result 和命令行客户端相关 (windows 下命令行客户端必须要设置gbk )

database server system 和服务器相关字符集 (system字符集不可修改 )
* 实际开发中 建议大家 将database 和 server 字符集 设置为utf8
修改完database server system 和服务器相关字符集后需要重新启动 mysql才能生效
在服务里重启就可以,还可以,在命令行 :停止命令:net stop mysql
启动命令:net start mysql

mysql核心配置文件 my.ini 如果linux my.cnf
[mysql] 主要配置命令行客户端参数 default-character-set=gbk ---- 影响 client、connection、result
[mysqld] 配置服务器参数 character-set-server=utf8 ----- 影响 database server
备注:如是win7 系统的话,因为权限问题不让修改,你可以把文件拷贝出来,修改完在放回去,(主要是是mysql安装在C盘会出现这样的问题)


如果服务器server 字符集 已经设置utf8 建立数据库 数据表 默认utf8 ----- 插入数据一定没有乱码
如果服务器 没有设置server字符集, 默认latin1 , 建立数据库指定字符集utf-8 建表指定字符集utf-8 (有乱码 )
解决方案一: 设置server 字符集, 重新建立数据库和表
解决方案二: jdbc:mysql:///db useUnicode=true&characterEncoding=utf-8 (默认传输字符集 utf8/gbk)