写点什么

MySQL 8 的关键新特性

  • 2018-03-07
  • 本文字数:904 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

MySQL 的第八个版本蓄势待发,并有望于 2018 年发布。在 MySQL 5.7.9 的首个通用版本推出后的 28 个月内,MySQL 8 发布了从 8.0.0 到 8.0.4 这五个候选版本。这些发布候选仅针对开发使用,而不应该生产系统中使用。因为这些候选版并不支持版本升级,用户可能会碰上候选版与一般可用(GA)版间存在数据格式不兼容的问题。

用户首先可能注意到,在版本号上出现了一个跳跃。这是因为 MySQL 丢弃了版本 6,而将版本 7 用于企业产品线。

窗口函数(Window Function)是MySQL 8 中最令人感兴趣的特性。其它一些数据库引擎中业已实现该特性。窗口函数对一系列查询行执行聚合运算,并可对每一行聚合周边的数据而生成结果。

类似于窗函数,递归CTE(Common Table Expressions)支持用户在不使用游标的情况下,执行引用了自身的子查询。该幻灯片对此特性作了详细的阐述。

MySQL 8 的默认字符集支持也从“Latin1”转变为“utf8mb4”。utf8mb4 支持每个字符使用多至四个字节。它是很多应用的首选字符集,因为它支持大多数扩展字符序(例如日语所用的 utf8mb4_ja_0900_as_cs等)以及 emoji 字符。在存储方面,MySQL 8 的默认存储引擎将使用 InnoDB。

隐藏索引(Invisible indexes)支持DBA 将某个索引设为不被查询优化器所考虑。该特性用于测试指定的索引对查询性能的影响情况,并可在对用户实际启用该索引前,恢复索引在查询优化中的可见性。MySQL 8 还大幅改进了对JSON 的支持,添加了基于路径查询参数从JSON 字段中抽取数据的 JSON_EXTRACT()函数,以及用于将数据分别组合到 JSON 数组和对象中的JSON_ARRAYAGG()JSON_OBJECTAGG()聚合函数。

MySQL 8 提供了灵活角色支持,支持CREATE、DROP 和GRANT 角色,甚至可将一个角色赋予另一个角色,并可限制MySQL 8 中可用的角色对每个会话或主机的可用性。用户也可以通过调用 ROLES_GRAPHML() 函数,实现角色的 GraphML 可视化。

MySQL 8 曾计划于 2017 年 10 月发布,但是 8.0.4 RC 直至 2018 年 1 月 23 日才发布。看来在正式推出GA 版之前,至少还需要发布两个候选版。

查看英文原文: Best New Features of MySQL 8

2018-03-07 18:006434
用户头像

发布了 391 篇内容, 共 147.6 次阅读, 收获喜欢 257 次。

关注

评论

发布
暂无评论
发现更多内容

GrowingIO企业级产品能力:四大需求,充分满足

极客天地

hoverfly 学习笔记

陈磊@Criss

“一键飞桨”,轻松实现飞桨框架和套件的下载安装!

飞桨PaddlePaddle

框架 飞桨

对比分析数仓中行列存的特性

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 3 月 PK 榜

巧用预测,多触点促业务可持续增长

HarmonyOS SDK

HMS Core

基于 Flink CDC 的实时同步系统

Apache Flink

大数据 flink 实时计算

详解软件质量模型

陈磊@Criss

开发域的质量

陈磊@Criss

kubernetes 可观测性:10款开源工具

HummerCloud

Kubernetes 云原生

内卷了!阿里Java八股文面试题“惨遭”泄露,导致132人面进大厂

Java你猿哥

面经 金三银四 java 八股文 Java八股文

测试左移和右移

陈磊@Criss

知识蒸馏、轻量化模型架构、剪枝…几种深度学习模型压缩方法

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 3 月 PK 榜

这 8 类问题,SysOM 2.0 OOM 诊断助你快速定位异常 | 龙蜥技术

OpenAnolis小助手

开源 OOM 操作系统 龙蜥技术 SysOM

混沌工程和故障演练

陈磊@Criss

CCF BDCI“大数据平台安全事件检测与分类识别”赛题,奇点云夺冠

极客天地

PyTorch深度学习实战 | 自然语言处理与强化学习

TiAmo

强化学习 PyTorch 自然语言

爱了!不愧是GitHub上标星115K的Java教程,全程干货,只讲重点

Java

供电电源的电磁兼容设计方法?5大要点快速收藏

华秋PCB

电磁 电路 兼容 电源 供电电源

从需求管理到迭代规划,优秀的产品经理如何让工作更高效?

万事ONES

【2023Java面试题全集】实用、全面、系统,助你一路通关!

程序知音

Java java面试 后端技术 Java面试题 Java面试八股文

持续测试破解自动化测试的行业谜题

陈磊@Criss

基于Redis、Netty、Websocket实现红包雨活动

ios系统修复软件:Fix My iPhone 激活版

真大的脸盆

ios Mac 系统修复 Mac 软件

别再硬面了!这份Java面试通关手册才是你急需的

Java java面试 Java八股文 Java面试题 Java面试八股文

这篇文章汇聚33个BUG!来挑战一下,看看你能找出来几个?

why技术

java

「Go工具箱」GoCSV包:一个能将结构体和csv内容互转的工具

Go学堂

Go 程序员 个人成长 csv CSV 文件导入

持续测试

陈磊@Criss

LED显示屏闪烁原因及解决办法

Dylan

LED灯闪烁 LED显示屏 全彩LED显示屏

【值得收藏】9种让你受益终身的数据分析思维

博文视点Broadview

低代码工具选项难题浅析

赫杰辉

低代码平台

从私信到协作开发:GitHub Pull Request 的发展史

Bytebase

GitHub 协作 pull request

MySQL 8的关键新特性_数据库_Alex Giamas_InfoQ精选文章