今天帮同事处理一个棘手的事情,问题是这样的:

无论在客户机用哪个版本的mysql客户端连接服务器,发现只要服务器端设置了

character-set-server = utf8

之后,

character_set_client、 character_set_connection、character_set_results

就始终都是和服务器端保持一致了,即便在mysql客户端加上选项

--default-character-set=utf8

也不行,除非连接进去后,再手工执行命令

set names latin1

,才会将client、connection、results的字符集改过来。

经过仔细对比,最终发现让我踩坑的地方是,服务器端设置了另一个选项:

skip-character-set-client-handshake

文档上关于这个选项的解释是这样的:

--character-set-client-handshake

Don't ignore character set information sent by the client. To ignore client information and use the default server character set, use --skip-character-set-client-handshake; this makes MySQL behave like MySQL 4.0

这么看来,其实也是有好处的。比如启用 skip-character-set-client-handshake 选项后,就可以避免客户端程序误操作,使用其他字符集连接进来并写入数据,从而引发乱码问题。

本文转自叶金荣51CTO博客,原文链接:http://blog.51cto.com/imysql/1880055,如需转载请自行联系原作者

MySQL字符集的一个坑相关推荐

  1. mysql div 没有小数,mysql order by limit 的一个坑

    mysql order by limit 的一个坑 分页查询的时候遇到的坑: 发现的问题: 对单个无索引的字段进行排序后limit .发现当被排序字段有相同值时并且在limit范围内,取的值并不是正常 ...

  2. MySQL UPDATE 语句一个“经典”的坑

    转载自  MySQL UPDATE 语句一个"经典"的坑 来源:ju.outofmemory.cn/entry/336774 有问题的SQL语句 why? 倒回去再重试验一把 最近 ...

  3. centos mysql 升级 5.7_CentOS 7下升级MySQL5.7.23的一个坑

    发现CentOS 7下升级MySQL5.7.23的一个坑,以前面升级到MySQL 5.7.23的一个集群为例 在我们环境下打开文件描述符个数的参数open_files_limit在MySQL 5.6. ...

  4. MySQL 字符集不一致导致索引失效的一个真实案例

    文章目录 问题描述 问题分析 总结 大家好,我是只谈技术不剪发的 Tony 老师.今天给大家分析一个由于 MySQL 字符集不一致导致索引失效的案例. 问题描述 有个朋友给我发来一个问题,说是他们的系 ...

  5. mysql ddl crash,MySQL5.6 crash-safe replication一个坑

    题图:<唐伯虎点秋香> 版本背景 1)操作系统 cat /proc/versionLinux version 2.6.32-696.el6.x86_64 (mockbuild@c1bm.r ...

  6. linux编译动态库未定义,GCC链接库的一个坑:动态库存在却提示未定义动态库的函数...

    背景 在GCC中已经指定链接库,然而编译时却提示动态库函数未定义! 测试出现的错误提示如下: [GMPY@13:48 tmp]$gcc -o test -L. -lmylib test.c /tmp/ ...

  7. navicat mysql 字符集_关于Navicat和MYSQL字符集不统一出现的中文乱码问题

    最近遇到一串关于MySQL中文乱码的问题,问题背景是这样的: 在此之前,服务器上安装好mysql之后就立马重新配置了字符集为utf8,之后用Navicat进行数据导入,发现中文的字符导入之后全是乱码, ...

  8. 【踩坑记录】记一次MySQL主从复制延迟的坑

    最近开发中遇到的一个MySQL主从延迟的坑,记录并总结,避免再次犯同样的错误. 情景 一个活动信息需要审批,审批之后才能生效.因为之后活动要编辑,编辑后也可能触发审批,审批中展示的是编辑前的活动内容, ...

  9. mysql字符集6_【mysql】6 字符集

    1.基本概念: 字符集:是一套字符与字符编码的集合. 字符:用于显示的抽象符号. 编码:显示符号需要变成二进制数才能存储,将字符转成二进制数,就是字符编码 2.常见的字符集&编码: ascii ...

最新文章

  1. [待总结]高频率vim命令
  2. 计算机网络探究二之利用PHP实现登录验证之后上网
  3. 解决安装ROS 时rosdep update 问题(time out)
  4. 【Qt】QWidget类详解(函数篇)
  5. Hexo Next主题进阶教程
  6. Ubuntu下安装 imagej 和 Fiji
  7. Java泛型详解:<T>和Class<T>的使用,泛型类
  8. 利用计算机解决鸡兔同笼问题,利用极限思想解决复杂鸡兔同笼问题
  9. 电脑c盘满了怎么清理
  10. 钩子的应用: 程序运行监视
  11. itext7相关使用
  12. GRBL分析:gcode解释器(一)
  13. 识别车牌是什么神经网络,bp神经网络车牌识别
  14. 网页的406报错问题
  15. 2021年全国计算机南京考点,2021考研考场安排:往年南京市考研考点及考场安排
  16. 石油化工行业智能供应链管理系统解决方案:数智化供应链平台推动企业转型智能化发展
  17. 江南春:在不确定的市场,找到确定性的增长
  18. ant-design-vue 1.7.8版本使用报错
  19. java中grid是什么意思,DataGrid是什么意思
  20. Mac:TexStudio 中文论文模版

热门文章

  1. Android实现对图片的缩放、剪切、旋转、存储
  2. Java基础/利用fastjson序列化对象为JSON
  3. fon循环总是返回最后值问题
  4. 从git中永久物理删除私密文件(改写git历史)
  5. weave实现宿主机之间的容器互联
  6. 利用GetPrivateProfileString读取配置文件(.ini)
  7. [链接]博客园中应用LaTex进行公式编写
  8. 启动Tomcat报的各种菜鸟错误
  9. Linux Kernel TCP/IP Stack — L3 Layer — netfilter 框架 — conntrack(CT,连接跟踪)
  10. XDP/eBPF — Overview