MySQL 8.0.19客户端的一个小变化

简介: MySQL 8.0.19客户端的一个小变化

不注意到这个变化的话,还挺折腾人的。

在MySQL 8.0.19 Release Notes里,有这么一段话:

When the mysql client operates in interactive mode, the --binary-as-hex option now is enabled by default. In addition, output from the status (or \s) command includes this line when the option is enabled implicitly or explicitly。To disable hexadecimal notation, use --skip-binary-as-hex (Bug #24432545)

意思是如果用mysql客户端进入交互模式,那么默认启用参数 --binary-as-hex,执行 status\s时能看到下面这样的标记:

[root@yejr.me]> \s
...
Binary data as: Hexadecimal
...
Threads: 1  Questions: 88...

可以在启动客户端时加上--skip-binary-as-hex关闭这个参数。

那么加上参数--binary-as-hex后,对交互式客户端会有什么影响呢?

先看下文档里的解释:

When this option is given, mysql displays binary data using hexadecimal notation (0xvalue).

也就是说,当查询到的数据有二进制数据的话,就会用十六进制方式展示出来。

看看下面的例子吧:(建议在PC端或横版观看)

# 在 --skip-binary-as-hex 模式下

# 用CHAR()函数能把二进制转成ASCII字符
[root@yejr.me]> SELECT CHAR(77,121,83,81,'76');
+-------------------------+
| CHAR(77,121,83,81,'76') |
+-------------------------+
| MySQL |
+-------------------------+

# 在 --binary-as-hex(8.0.19后默认) 模式下
# 直接把二进制数据以十六进制输出了
...
Server characterset: utf8mb4
...
UNIX socket: /mysql/data01/mysql.sock
Binary data as: Hexadecimal

[root@yejr.me]> SELECT CHAR(77,121,83,81,'76');
+--------------------------------------------------+
| CHAR(77,121,83,81,'76') |
+--------------------------------------------------+
| 0x4D7953514C |
+--------------------------------------------------+


看起来是不是觉得怪怪的,很不适应。

新参数--binary-as-hex是MySQL 5.6.37版本开始引入的,由一位叫做Daniël van Eeden的哥们建议加入的。个人不是太理解这位仁兄的脑回路,可能觉得对于二进制数据,MySQL本来就不该给智能化地转成ASCII,而应该以码农们习惯的十六进制展示,所以能让屏幕输出看起来更酷一些?哈哈哈...

            </div>
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
3月前
|
机器学习/深度学习 监控 算法
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
本项目基于YOLOv8深度学习模型,实现了一个多姿态行为识别系统,能够精准地识别站立、摔倒、坐姿、深蹲和跑步等行为。项目的核心内容包括完整的YOLOv8训练代码、标注数据集、预训练权重文件、部署教程和PyQt5界面,提供了一套从数据收集到最终部署的完整解决方案。
基于YOLOv8的人体多姿态行为识别系统(站立、摔倒、坐姿、深蹲与跑步)|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!
|
开发工具 git
github上的版本和本地版本冲突的解决方法
github上的版本和本地版本冲突的解决方法
338 0
|
9月前
|
UED
销售易CRM:以用户体验为核心,驱动企业销售效能提升
销售易CRM是一款以用户体验为核心的企业客户关系管理工具。它通过简洁直观的操作界面降低学习成本,流畅稳定的系统性能提升办公效率,智能化功能助力精准识别高价值客户并优化销售流程,移动办公与离线支持打破时间和空间限制。全方位的高效、智能解决方案,助力企业在竞争中脱颖而出,实现持续发展。
|
12月前
|
机器学习/深度学习 算法 数据处理
《MaxFrame:数据处理的卓越实践与提升》
MaxFrame是一款融合AI技术和Pandas库的数据处理工具,提供智能分析、预测及高效的数据清洗、转换功能。它在图像识别和结构化数据处理方面表现出色。然而,在大规模数据处理时性能有待提升,建议优化算法和内存管理。此外,增加数据可视化、机器学习集成等功能,改进用户界面并加强数据安全保障,将使MaxFrame更全面地满足用户需求,成为数据处理领域的领先产品。
196 32
|
存储 自然语言处理 安全
『软件工程9』结构化系统分析——解决软件“做什么”问题
该文章深入讲解了结构化系统分析方法,用于明确软件需求和解决软件“做什么”的问题,并介绍了在此过程中使用的工具和技术。
『软件工程9』结构化系统分析——解决软件“做什么”问题
|
存储 缓存 算法
Python中的代码优化
【8月更文挑战第2天】Python虽简洁强大,但在处理大数据或高性能需求时可能遇到效率挑战。本文介绍13种Python代码优化技巧,包括选用高效数据结构、避免不必要循环、利用生成器、并发编程、第三方库、内置函数、结果缓存、数据序列化、编译优化、延迟计算、内存管理及性能分析工具等,配以示例代码,助您提升程序性能。
|
网络协议 安全 网络安全
什么是 IP 欺骗?
【8月更文挑战第24天】
442 0
|
存储
登录界面的验证登录以及session的使用
构建登录系统,login.jsp接收用户输入,POST数据到check.jsp验证。正确时在session中存储用户名并重定向至admin.jsp,该页检查session中的username,存在则显示管理员界面,否则返回login.jsp。session非一一对应用户浏览器,且在check.jsp中设置session超时为60秒。实验包括流程图及不同登录状态的界面展示。
276 1
|
测试技术 uml 数据安全/隐私保护
强大的跨平台绘制流程图软件网站ProcessOn
强大的跨平台绘制流程图软件网站ProcessOn
372 0