MySQL中文乱码问题总结
来源:互联网 发布:mac双系统开机选择切换 编辑:程序博客网 时间:2024/04/29 03:44
一、方案一
MySQL使用过程中最大的问题可能就是乱码问题了,以前以为只要按如下方案就能解决中文乱码问题。
1.数据库在建立时设置utf8字符集,utf8_general_ci排序规则。保证每张表存储的数据都是utf8格式的。
2.Java连接数据库时,url后边加上?useUnicode=true&characterEncoding=utf-8,例如:url = " jdbc:mysql://localhost:3306/spring_db?useUnicode=true&characterEncoding=utf-8 ";
按照以前的理解,只要JSP以及HTML页面每个页面用UTF8编码,Servlet接收和传输值都用UTF8编码,跟数据库的编码对应就一定能解决中文乱码问题了。然而,昨天在向数据库插入繁体中文时出现了乱码,查找了很多资料,最终尝试解决的方案二。
二、方案二
首先,确保程序编码没问题,数据确实是以utf8编码传输的,数据库编码也是对应的utf8。cmd进入数据库,使用命令:mysql> show variables like 'character%';查询所有编码。
此图,是最终修改后的完全与程序对应的。修改方法为set names utf8,但此种方法只能当前有效,为了确保一劳永逸,可以修改MySQL安装目录下的my.ini配置文件,免安装办的MySQL此文件名字初始可能为my-default.ini,需修改为my.ini配置生效。
在配置文件中添加如下配置:
[client]
default-character-set=utf8
port=3306
[mysql]default-character-set=utf8
[mysqld]character-set-server=utf8
character_set_filesystem=utf8
修改完后重启MySQL服务就可以了。本人在重启服务时因为my.ini配置文件有一个地方写错了,导致启动失败,错误提示如下:
本地计算机 上的mysql服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。
出现此错误一般在MySQL第一次安装配置后,配置不当引起的,并且在.err的log中没有任何提示。运行mysqld --initialize执行初始化,可以看到如下提示:
因为配置文件中的server_id项不识别,将my.ini中此项删除或注释掉,如下所示:
最后重启MySQL服务即可。
已经成功进入MySQL服务。
- MySQL 中文乱码问题总结
- MySQL 中文乱码问题总结
- MySQL中文乱码问题总结
- mysql解决中文乱码问题总结
- Java-MySQL中文乱码编码问题总结
- Java-MySQL中文乱码编码问题总结
- mysql中文乱码总结
- mysql 中文乱码总结
- mysql中文乱码总结
- mysql 中文乱码问题
- MySql 中文乱码问题,:
- MYSQL中文乱码问题
- MySQL中文乱码问题
- mysql 中文乱码问题
- MySql中文乱码问题
- MySQL 中文乱码问题
- mysql中文乱码问题
- Mysql中文乱码问题
- Codeforces Round #382 (Div. 2) C. Tennis Championship(斐波那契递推)
- xfce 快捷键 命令整理
- 解决Android应用启动时的黑白屏问题
- PTA-数据结构 5-31 笛卡尔树 (25分)
- JAVA中LISt遍历时如何remove元素
- MySQL中文乱码问题总结
- codeforce 382 D. Taxes(哥德巴赫猜想)
- Java垃圾回收机制
- 蹄声工作效率的方法
- MySQL创建关联表的方法
- 跨浏览器确定浏览器窗口位置及窗口大小
- Spring 介绍
- Swift相关概念语法简单理解
- 断言NSAssert()和NSParameterAssert区别和用处