MySQL编码原因会导致数据库出现中文乱码

解决办法:

修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码。

具体操作:

1、进入MySQL控制台

mysql -h localhost -P 3306 -u root -p #输入密码进入

status; #查看当前MySQL运行状态,如下图所示:

Server characterset: latin1

Db characterset: latin1

Client characterset: latin1

Conn. characterset: latin1

这表明:默认客户端和服务器端都用了latin1编码,所以会出现乱码。

此时再在命令行输入:show variables like 'character_set%'; #查看MySQL字符集

2、修改mysql配置文件

vi /etc/my.cnf #根据个人配置找到相应文件

#在[client]段增加下面代码

default-character-set=utf8

#在[mysqld]段增加下面的代码

#default-storage-engine=INNODB #置默认存储引擎为InnoDB,此处可不必添加

character-set-server=utf8

collation-server=utf8_general_ci

:wq! #保存退出

3、systemctl restart mysql.service #重启MySQL

再次进入MySQL控制台查看,如下图所示:

Server characterset: utf8

Db characterset: utf8

Client characterset: utf8

Conn. characterset: utf8

命令行输入:show variables like 'character_set%'; #查看MySQL字符集

MySQL数据库字符集编码修改完成!

参数说明:

character_set_client:客户端请求数据的字符集。

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

character_set_database:默认数据库的字符集,无论默认数据库如何改变,都是这个字符集;如果没有默认数据库,使character_set_server指定的字符集,此参数无需设置。

character_set_filesystem:把操作系统上文件名转化成此字符集,即把character_set_client转换character_set_filesystem,默认binary即可。

character_set_results:结果集的字符集。

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

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

备注:

MySQL 5.5之前的版本设置办法:

在[client]段下添加

default-character-set=utf8

在[mysqld]段下添加

default-character-set=utf8

注意,如果修改后不能启动报错,把[mysqld]段下default-character-set=utf8改为character_set_server=utf8,取消[client]段的设置。

创建数据库的命令:

Create DATABASE IF NOT EXISTS mydata default charset utf8 COLLATE utf8_general_ci;

.........................................................................................................................................................................

摘取自系统运维(www.osyunwei.com),原文链接:修改MySQL数据库字符编码为UTF-8解决中文乱码

CentOS 7修改MySQL 5.6字符集为UTF-8的更多相关文章

  1. centos 下修改mysql 默认字符集

    解决办法: CentOS 7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 mysql  -u root - ...

  2. mac下修改mysql的默认字符集为utf8

    1,检查默认安装的mysql的字符集 mysql> show variables like '%char%'; +--------------------------+------------- ...

  3. 修改mysql数据的字符集校验规则使其区分大小写

    mysql 使用utf8字符集默认的校验规则collate为utf8_general_ci,不区分数据的大小写 测试如下 ::) character set utf8 collate utf8_bin ...

  4. 修改mysql表的字符集

    ALTER TABLE logtest CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci; 修改数据库字符集: 代码如下: ALTER DAT ...

  5. 修改mysql的默认字符集

    \s 查看mysql的字符集 把server characterset和db characterset修改成utf8 在my.ini的mysqld下面添加两行代码,重启mysql [mysql] de ...

  6. 修改Mysql数据库的字符集

    1.先检查数据库的默认字符集是否是引起不能存储中文的原因: 登录数据库后执行下面的命令 mysql> show variables like 'character%'; 由上图可以看出,data ...

  7. win下修改mysql默认的字符集以防止乱码出现

    环境:win8.1+mysql5.6.11+xampp(v3.2.1) 默认的编码如下 查看方式: show variables like 'character%'; 结果: 从以上信息可知数据库的编 ...

  8. CentOS 如何修改mysql 用户root的密码

    源地址:http://blog.sina.com.cn/s/blog_6756f85201019zv7.html 第一步:用帐号登录mysql[root@CentOs5 ~]# mysql -u ro ...

  9. Linux(centos)下修改mysql的sql_mode模式

    进入MySQL的配置文件 默认是/etc/my.cnf vim my.cnf 在最后一行加入 sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITU ...

随机推荐

  1. [hihoCoder] #1093 : 最短路径·三:SPFA算法

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 万圣节的晚上,小Hi和小Ho在吃过晚饭之后,来到了一个巨大的鬼屋! 鬼屋中一共有N个地点,分别编号为1..N,这N个地点之 ...

  2. dia无法输入中文?

    解决方法: 以管理员权限打开/usr/bin/dia ,做如下修改 #dia-gnome --integrated "$@" dia-gnome "$@"

  3. Android Things专题2 硬件介绍

    文| 谷歌开发人员技术专家, 物联网方向 (IOT GDE) 王玉成(York Wang) 经过2016年Brillo首批开发人员的反馈,以及市场调研,为了照应广大Android开发人员的习惯,形成了 ...

  4. Memcached安装使用和源代码调试

    memcached官网:http://memcached.org/ 一.安装 下载 # wget http://www.memcached.org/files/memcached-1.4.25.tar ...

  5. [svc]磁盘接口与RAID

    一 磁盘接口 IDE 传统家用: /dev/hda1 SISC 传统服务器: /dev/sdb1 SATA 现在家用 SAS 现在服务器用 FC(光纤通道) 高级服务器 注意: 分区编号,1-4只能给 ...

  6. PHP源代码生成 main/config.w32.h

    PHP源代码生成 main/config.w32.h 1.下载php源代码包php-5.4.0.tar.gz,解压到D:\php-5.4.0 2.下载2个必要的包http://xiazai.jb51. ...

  7. 基于python的直播间接口测试实战 详解结合项目

    基于python的直播间接口测试详解 一.基本用例内容描述 以设置白名单 /advisor/setUserWhiteList.do接口为例,该方法为POST at first,先要导入一些常用到的模块 ...

  8. Tomcat的URL中文乱码解决以及传输优化

    默认的tomcat容器如果直接使用get方式在url中传中文时,传到后台接收会是乱码. 乱码问题 原因: tomcat默认的在url传输时是用iso8859-1编码. 解决方案一: 在使用get传输参 ...

  9. 【转】雅典娜与宙斯的对话.(kerberos原理)

    1 八月 2010 22:07:51关于Kerberos的对话(MIT)雅典娜与宙斯 雅典娜与宙斯关于地狱之门守护者的对话 Kerberos: Network Authentication Proto ...

  10. 解决CentOS中/var目录满的问题

    最近服务器的/var目录总是报警说磁盘满了,查看以后发现主要是/var/log/maillog和/var/spool/mail/root和/var/spool/mqueue目录.从搜索的结果看到应该是 ...