编码的种类

SHOW VBRIABLES LIKE '%character%';

1) character_set_client : MySQL Server 假定client传输数据过来的时候的编码

2) character_set_connection: Server收到SQL语句时,将其转换成的编码

3) character_set_results: Server在返回数据给客户端时,会将数据转成这个编码

4) character_set_system: 元数据编码(表名, 列名等)

5) character_set_server, character_set_database, character_set_table, character_set_column: MySQL默认的 服务器/数据库/表/列 编码, 优先级由低到高, 就是表编码可覆盖库编码,列编码可覆盖表编码

校对集种类

collation是字符的排序规则,就是字符之间比较大小的规则,例如utf8_general_ci表示的就是按照utf8编码且忽略大小写来排序,MySQL在排序时会将两个比较字符先转化为相同的编码,如果出现编码不兼容,则会抛出错误.

关于 SET NAMES 和 SET CHARACTER SET

SET NAMES 'ENCODING' 是设置以上编码的命令,它影响的编码包括:character_set_client, character_set_connection, character_set_results, collation_connection

SET CHARACTER SET 'ENCODING' 影响的编码包括:character_set_client, character_set_results

简而言之 SET NAMES 会影响Server的编码和解码, 而 SET CHARACTER SET 只会影响Server的解码

如果说我们使用latin1打开一个连接,然后将set names utf8,则会出现问题,因为这会使得服务器认为客户端传入数据是utf8编码,而实际上使用的确实latin1

所以最好的解决策略是同意所有的解码和编码规则

下面是MySQL编码修改的方法

编辑/etc/mysql/my.cnf

在[client]节点下添加

default-character-set=utf8

在[mysqld]节点下添加

character-set-server=utf8

collation-server=utf8_general_ci

重启mysql服务

service mysql restart 即可

进入mysql,查看编码

show variables like "character%";

可以看到已经改好

mysql 编码种类_MySQL 编码相关推荐

  1. Mysql编码教程_mysql编码设置教程 mysql编码要怎么设置呢

    mysql的默认编码是拉丁,每次JSP制作网页用insert语句插入数据库时汉字都会显示成问号,安装mysql后,启动服务并登陆,使用show variables命令可查看mysql数据库的默认编码: ...

  2. mysql utf8mb4 字节_mysql编码使用utf8mb4

    MySQL在 5.5.3 之后增加了 utf8mb4 字符编码,mb4即 most bytes 4.简单说 utf8mb4 是 utf8 的超集并完全兼容utf8,能够用四个字节存储更多的字符.(查看 ...

  3. mysql编码不对_MySQL编码不一致导致乱码问题总结

    使用MySQL常常会出现乱码问题,一般情况下都是因为编码不一致造成,以下提供了MySQL数据编码相关的一些信息,希望会有所帮助. 一.MySQL的编码机制: 1.数据库级别的编码:数据库服务器上允许建 ...

  4. mysql 汉编码 的选_peewee连接mysql汉语言数据编码_mysql

    peewee连接mysql中文数据编码 系统是win7 x64 python 2.7.6的site.py里面编码设定为 utf-8 py文件首行指定 #coding:utf-8 mysql 5.5.3 ...

  5. mysql连接串指定编码_MYSQL创建数据库时候直接指定编码和排序规则

    安装我 在网上搜索的结果 执行 代码: sudo gedit /etc/mysql/my.cnf 设置了默认编码为 UTF8 代码: [client] port            = 3306 s ...

  6. mysql中的编码问题_mysql存储乱码之编码问题

    在编写项目中,出现乱码问题有比较多的地方,当前笔记为在项目中没有乱码,在存储mysql 中出现乱码. 1.通过下面语句查看数据库.表的客户端.服务端编码是否一致,是否能存储中文. show varia ...

  7. mysql怎么改字体编码_mysql怎么改字符编码?

    mysql命令行修改字符编码 1.修改数据库字符编码mysql> alter database mydb character set utf8 ; 2.创建数据库时,指定数据库的字符编码mysq ...

  8. mysql修改客户端编码命令_mysql命令行修改字符编码

    1.修改数据库字符编码 mysql> alter database mydb character set utf8 ; 2.创建数据库时,指定数据库的字符编码 mysql> create ...

  9. mysql连接编码设置_MySQL基础 - 编码设置

    刚开始工作的时候,在工作中遇到的与数据库相关的问题,多半跟编码有关,总结一下数据库编码的设置. 字符集 查看数据库支持的字符集: mysql> SHOW CHARACTER SET; 从图中可以 ...

最新文章

  1. linux 网络错误 TCP: too many orphaned sockets 解决方法
  2. android 指纹识别支付 secure os,Android指纹登录/指纹支付简述
  3. 工控设备 如何将数据发送到串口_实现4G无线通信透传的远程通信多组网5个PLC相互交换数据...
  4. php 取utc时间,得到UTC时间在PHP
  5. Tensorflow Object detection API 在 Windows10 配置
  6. JAVA websocket中 spring无法注入依赖问题解决
  7. Height Half Values
  8. 【白皮书分享】2021汽车产业数字化转型白皮书-腾讯研究院.pdf(附下载链接)...
  9. Inside NT Boot
  10. gRPC 流式传输极简入门指南
  11. jsp主机与asp主机的区别和支持分析
  12. 纪年——记事本app
  13. python第三方模块之pyquery
  14. CentOS服务器密匙登录
  15. 异构数据源DDL转换的两种方式
  16. opencv中findContours 和drawContours画图函数
  17. 交易系统单服务器tps,性能优化那些事之一,TPS和延时
  18. matlab查看hdf头文件,基于Matlab的HDF文件读取方法
  19. 使用C++访问Google API
  20. 计量经济学-多元回归-2022.11

热门文章

  1. WORDPRESS”丢失计划任务”
  2. UML中的用例间关系图示
  3. python学习(day1)初识入门
  4. python系统学习:第二周之购物车功能
  5. Android使用自定义字体(自定义view)
  6. [转载]对称加密DES和TripleDES
  7. 用$.getJSON() 和$.post()获取第三方数据做页面 ——惠品折页面(1)
  8. linux技能点七 shell
  9. 05_视图控制器_1
  10. NOIP201501金币