写点什么

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:006654
用户头像

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

关注

评论

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

JVM-技术专题-Java类文件结构

码界西柚

Java JVM

来喽,来喽,Python 3.9正式版发布了~~~

华为云开发者联盟

Python 编程

WSDM Cup 2020大赛金牌参赛方案全解析

华为云开发者联盟

大数据 搜索 信息

高难度对话读书笔记—聆听篇

wo是一棵草

LeetCode题解:94. 二叉树的中序遍历,使用栈,JavaScript,详细注释

Lee Chen

大前端 LeetCode

医疗AI系统构建(1)one-hot编码

刘旭东

人工智能 学习 医疗AI one-hot

有了TA,领域外企业里的小IT团队,也能轻松搞定大型项目

Marilyn

敏捷开发 快速开发

The story of programmers in famous enterprises.

Marilyn

敏捷开发 快速开发

拜托,学妹,别再问我怎么自学 Java 了!和盘托出

沉默王二

Java 自学编程

苦难过后,终会团聚

hellocj

JVM-技术专题-对象的实例化过程

码界西柚

Java JVM

Lindorm云原生数据库 - 让数字时代IT运维系统“灵动”起来

许力

DevOps APM Data Lake AIOPS

年轻人大企打拼多年,刚升迁便遇巨大阻力难以解决,到底如何才能在职场中幸存?

Marilyn

敏捷开发 快速开发

微前端之如何拆解React巨石应用 qiankun

SugarTurboS

项目管理 架构 大前端 React

OpLog4j

Geek_746da6

OKR-VUCA时代目标管理利器实践分享

张兆东

华为云专家讲述知识图谱构建流程及方法

华为云开发者联盟

华为 数据 知识图谱

在线教育企业迎来“秋招”大考,数字用户体验成胜负关键手

博睿数据

运维 APM 在线教育 AIOPS 用户体验

JVM-技术专题-类加载机制

码界西柚

Java JVM

图解 K8S 源码 - Informer 篇

郭旭东

Kubernetes Kubernetes源码

国外的公司都是如何对待大龄程序员的?在国内该如何应对?

Java架构师迁哥

个人数字人民币钱包即将亮相

CECBC

央行 数字人民币

一线城市年轻人生活工作实录(程序员篇)

Marilyn

敏捷开发 开发者工具 快速开发

亚马逊Prime会员日火爆开启一站购全球逾3000万正品商品

爱极客侠

Programmatic Navigation using SwiftUI| 使用SwiftUI进行程序化导航

Daniel

百度人工智能OCR调用调试过程

tuuezzy

我和我的智能联接

脑极体

从哲学源头思考自动驾驶网络架构设计

华为云开发者联盟

自动驾驶 架构

第三周作业一

dll

翻译之深入注释俄罗斯民间故事的语料库,以实现对俄罗斯形式主义理论的机器学习

AI代笔

图扑软件联手阿里Lindorm数据库开启工业物联超融合存储模式

许力

IoT AIOT

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