当前位置: 首页 > news >正文

linux下mysql乱码,Linux下mysql中文乱码解决方案

中文存入 mysql 数据库出现的乱码,从 JSP 页面读取 mysql 中文数据出现乱码,以及在 sell 环境下查看数据库表中文数据出现乱码。为了解决中文乱码问题,首先是采用同一字符集。本人采用的是Gbk.

1.安装mysql后首先修改配置文件 /etc/my.cnf (注:可能安装的目录不同,通过搜索my.cnf这个文件就可以方便地找到my.cnf这个目录)。找到my.cnf这个文件后,在文件中添加如下内容(注:只添加,文件中的其它内容不需要改变)。

[client]

default-character-set=gbk

[mysqld_safe]

default-character-set=gbk

[mysqld]

default-character-set=gbk

[mysql]

default-character-set=gbk

2. 重新启动mysql服务,进入sell终端,进入mysql的命令提示符下输入如下指令:

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

| character_sets_dir | /usr/share/mysql/charsets/

+---------------------+----------------------

3.到此基本上解决了mysql的中文乱码问题。最好是重新启动一下您的操作系统!这样已做的改变都能及时的生效。(如果还要出现乱码的话,最好是写一个过滤乱码的过滤器,一切问题都会解决的).

4.在要发送中文或者要读取中文的JSP页面(最好所有页面)都添加如下声明:

标签对中添加如下:

注意在servlet中对请求进行响应的方法中同样要有:

response.setContentType("text/html;charset=gbk");

(由于不明原因firefox发送的请求仍然是latin1的时候执行这一步)

在将请求的参数插入数据库之前还要再执行一次转码(将latin1编码转换为utf-8),例如:

String utf8_str = new String( latin_str .getBytes("latin1"),"gbk");

这一步可以写在一个过滤器中,不怕麻烦也可以在每一次在将请求数据插入之前都进行一次转码。

另外:在连接数据库的时候可以不用加上字符集参数了,直接用用户名和密码连接就可以了,如连接:

con=DriverManager.getConnection("jdbc:mysql://localhost:3306/数据库名","用户名","密码");

相关文章:

  • matlab里怎么计算期望,§7.4.2 利用MATLAB计算随机变量的期望和方差.pdf
  • php静态页缓存,php处理静态页面:页面设置缓存时间图文详解
  • java 数据的储存,java数据储存方式详解
  • helpers.php,helpers.php
  • python下载package失败,pip安装packag失败
  • php ieee754,在 Go 中探索 IEEE-754 标准
  • oracle+数据结构+字典,ORACLE 数据字典
  • liunx php libiconv-1.14 扩展库地址,编译安装php之安装libiconv-1.14.tar.gz出错解决方法...
  • Oracle标量子查询执行计划,性能为王:SQL标量子查询的优化案例分析
  • oracle insert和update,INSERTUPDATE和MERGE (转)
  • 有关oracle的论文,Oracle数据库研究论文有关Oracle数据库的论文
  • linux rocketmq 命令,Linux下安装RocketMQ(单Master)
  • linux 查看 文件夹代销,速达常见问题集
  • 斑马打印机linux驱动安装教程,热敏打印机安装驱动教程
  • linux串口设置1843200波特率,串口通信程序设计
  • 【node学习】协程
  • HTTP那些事
  • java B2B2C 源码多租户电子商城系统-Kafka基本使用介绍
  • Mocha测试初探
  • PHP面试之三:MySQL数据库
  • PV统计优化设计
  • python学习笔记 - ThreadLocal
  • Rancher-k8s加速安装文档
  • Terraform入门 - 3. 变更基础设施
  • 动态魔术使用DBMS_SQL
  • 三分钟教你同步 Visual Studio Code 设置
  • 实现简单的正则表达式引擎
  • 优化 Vue 项目编译文件大小
  • No resource identifier found for attribute,RxJava之zip操作符
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​【已解决】npm install​卡主不动的情况
  • ​学习笔记——动态路由——IS-IS中间系统到中间系统(报文/TLV)​
  • # Redis 入门到精通(八)-- 服务器配置-redis.conf配置与高级数据类型
  • # 达梦数据库知识点
  • #if等命令的学习
  • #include<初见C语言之指针(5)>
  • $GOPATH/go.mod exists but should not goland
  • (13)[Xamarin.Android] 不同分辨率下的图片使用概论
  • (20050108)又读《平凡的世界》
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (C#)if (this == null)?你在逗我,this 怎么可能为 null!用 IL 编译和反编译看穿一切
  • (c语言)strcpy函数用法
  • (java)关于Thread的挂起和恢复
  • (solr系列:一)使用tomcat部署solr服务
  • (层次遍历)104. 二叉树的最大深度
  • (七)微服务分布式云架构spring cloud - common-service 项目构建过程
  • (转)Windows2003安全设置/维护
  • .htaccess配置重写url引擎
  • .NET CLR Hosting 简介
  • .net core + vue 搭建前后端分离的框架
  • .net core使用ef 6
  • .NET 中的轻量级线程安全
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .NET轻量级ORM组件Dapper葵花宝典
  • .net中的Queue和Stack