【他山之石】mysql编码问题总结
有些问题可能比较基础,但是没有经过系统学习还是可能会出错,记录下。
这次是mysql的编码问题。
背景是部署新的测试环境,给了一台服务器还有在另一个环境下的mysql,配置过程中发现mysql编码有问题,查看结果如下

发现character_set_client和character_set_connection以及character_set_results都是latin1(也就是iso-8859-1),这显然不行。于是想到修改数据库服务器上的my.cnf文件,在[client]下增加了一行
default-character-set=utf8
发现还是不行,一直不理解问题出在哪里,后来才发现自己的愚蠢,问题不是出在mysql服务端的配置,而是客户端的配置。
比如执行 mysql -h test-db.com -u test -p的时候,决定此次连接的编码的一方是当前mysql客户端的配置文件my.cnf而不是mysql数据库服务端的配置文件!!!
这次经过修改之后终于正常了。之前还找过dba的同事,感觉脸火辣辣的,这酸爽╮(╯_╰)╭
顺便回顾下各个属性的意义吧。
character_set_client: MySQL服务器假定client传输过来的数据的编码.(客户端决定)
character_set_connection: MySQL服务器接收到数据时,将其转换成哪种编码.(客户端决定)
character_set_results: MySQL服务器响应给客户端的数据采用哪种编码.(客户端决定)
character_set_system: 元数据采用的编码(表名, 列名等).
character_set_server: MySQL服务器默认的数据编码方式.
character_set_database: MySQL数据库默认的数据编码方式.
character_set_table: MySQL数据库中表的默认数据编码方式.
character_set_column: MySQL数据库中表的列(字段)默认的数据编码方式.
【他山之石】mysql编码问题总结的更多相关文章
- mysql编码的那点事
Mysql编码问题 在php页面可以向mysql插入英文字符,但就是不能插入中文字符,在cmd客户端也可从插入,这是困扰我两天的问题. 在网上找了很多资料,最终确定了是字符编码这个地方出现了问题,首 ...
- Linux(Ubuntu)使用日记------Mysql编码(utf-8)的设置
Mysq版本:5.7.21 操作系统:Linux(Ubuntu) 整个操作的基本思路如下(包括问题的解决思路,想要直接解决问题的可以先看最后的命令总结) 检查mysql编码 找到Mysql的配置文件 ...
- php mysql 编码问题
php mysql 编码问题 问题: PHP从数据库中读取数据,并echo出来,数据中文显示正常:但是echo出新定义的中文字符串,新定义的字符串会乱码. 由此可能是数据库中提取出来的中文编码和php ...
- linux上设置mysql编码
linux下设置mysql编码 linux下设置mysql编码 首先查找MySql的cnf文件的位置: [root@flyHome gaoxiang]# find / -iname '*.cnf' - ...
- MYSQL进阶学习笔记一:MySQL编码设定,会话变量和全局变量!(视频序号:进阶_1-3)
知识点一:MySQL编码设定(1-2) 服务器编码设定: 查看MySQL服务器端的编码格式: SHOW VARIABLES LIKE ‘char%’; 设定编码格式: SET NAMES ‘utf8’ ...
- 关于mysql编码问题
1 查看MySQL编码 SHOW VARIABLES LIKE 'char%';
- 配置mysql 编码
配置mysql 编码 [client]default-character-set=utf8mb4 default-storage-engine=INNODB [mysql]default-charac ...
- mac mysql 编码配置
mac mysql 编码配置 (mysql目录下没有my.cnf) 想要修改编码发现自己的/usr/local/mysql/support-files里面根本没有my.cnf 安装方式是去mysql官 ...
- mysql编码设置
一:mysql字符集 mysql的字符集支持(Character Set Support)有两个类型:字符集(Character set)和连接校对(Collation).对于字符集的支持细化到四个层 ...
随机推荐
- java代码简单实现栈
1. 基于数组简单实现 /** * @author <a herf="mailto:yanwu0527@163.com">XuBaofeng</a> * @ ...
- 模板—扩展GCD*2
有必要重新学一下扩展GCD emmmm. 主要是扩展GCD求解线性同余方程$ax≡b (mod p)$. 1.方程有解的充分必要条件:b%gcd(a,p)=0. 证明: $ax-py=b$ 由于求解整 ...
- re模块下的常用方法
一 : re模块的查找 findall 优先级查找 返回列表 找所有的匹配项(从大段的内容中找匹配到的项目) import re str = "qwer asdf zxcv qwer ...
- notepad++最有用的快捷键
Ctrl+Tab 实现在多个打开的窗口间切换 Ctrl+Shift+Q 区块注释 Ctrl+K 行注释 Tab 缩进 Shift+Tab 删除缩进 先按住键盘上的“ctrl”键不放,然后滚动鼠标的 ...
- Python深入:super函数
新式类中最酷的,或者也是最不平常的特性之一,可能就是编写“cooperative类”.‘cooperative类’通过多继承,使用我称之为‘cooperative super call’的模式. 先来 ...
- 2012-4-2 通过MdiParent设置窗体最前
SentenceForm form = new SentenceForm(); form.MdiParent = this; form.Show(); //form.MdiParent = this; ...
- HBuider快捷键
朋友推荐用Hbuilder编辑器,看了下Hbuilder官网和那视频,感觉牛逼哄哄的, 自己也就体验了一下,打开Hbuilder的快捷键列表,每个快捷键都体验了一下,以下展示出来的,每一个都是精华,每 ...
- Python--day19--sys模块
sys模块 sys模块是与python解释器交互的一个接口 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0),错误退出sys. ...
- 洛谷P2258 子矩阵 题解 状态压缩/枚举/动态规划
作者:zifeiy 标签:状态压缩.枚举.动态规划 题目链接:https://www.luogu.org/problem/P2258 这道题目状态压缩是肯定的,我们需要用二进制来枚举状态. 江湖上有一 ...
- [转]来自后端的逆袭 blazor简介 全栈的福音
背景 什么是SPA 什么是MPA MPA (Multi-page Application) 多页面应用指的就是最传统的 HTML 网页设计,早期的网站都是这样的设计,所之称为「网页设计」.使用 MPA ...