MySQL 9.0 正式发行Innovation创新版已支持向量

news2024/9/22 11:24:36

从 MySQL 8.1 开始,官方启用了新的版本模型:MySQL 创新版 (Innovation) 和长期支持版 (LTS)。 根据介绍,两者的质量都已达到可用于生产环境级别。区别在于: 如果希望尝试最新的功能和改进,并喜欢与最新技术保持同步,那么 MySQL 创新版本可能最适合您。 该版本非常适合在快节奏的开发环境中工作的开发人员和 DBA,其中有高水平的自动化测试和现代的持续集成技术,可以实现更快的升级周期。 如果您的环境需要继续保持已经固定的行为,那么 LTS 版本就是您的不二之选。这些版本仅包含必要的修复,因此可以减少数据库软件行为变更带来的风险。
在这里插入图片描述

2024年7月1日,MySQL的创新版MySQL 9.0 GA,如果您还不清楚什么是创新版,请查阅MySQL的创新版(Innovation)与长期稳定版(LTS)。

这个版本里面有哪些变化。

  • “mysql_native_password”插件已经被删除,如果客户端软件不具备“CLIENT_PLUGIN_AUTH”能力将无法连接服务器。为了向后兼容,“mysql_native_password”在9.0版本的客户端上仍然可以连接到早期版本的MySQL服务器。
  • SQL语句“CREATE EVENT”、“ ALTER EVENT”,及 “DROP EVENT”可以作为PREPARE执行。
  • 由包含“IGNORE”关键字的语句忽略产生的错误“ER_SUBQUERY_NO_1_ROW”已从错误列表中删除。
  • Performance Schema中增加了两个表:
    variables_metadata:提供了关于系统变量的一般信息。这些信息包括MySQL服务器识别的每个系统变量的名称、作用域、类型、范围(如适用)和描述。
  • global_variale_attributes:提供了关于服务器分配给全局系统变量的属性值对的信息。
  • EXPLAIN ANALYZE的输出结果可以用JSON格式保存,语法如下:
    EXPLAIN ANALYZE FORMAT=JSON INTO @variable select_stmt

Windows版本的相关改进

使用Windows版的用户可以在这个版本里面获得大量的体验改善,修复了Windows安装向导中大量的错误。

MySQL Shell

更新并简化了InnoDB ReplicaSet中锁的处理,不再需要多个每个实例的锁。
支持部分或完全解散 ClusterSet。
支持在所有能够访问的成员上执行“.execute().”。
升级检查工具支持对外键参照的检查。

MySQL9.0支持的平台

9.x8.4
长期支持
8.0
操作系统建筑学
Oracle Linux / Red Hat / CentOS / Rocky Linux
Oracle Linux 9 / Red Hat Enterprise Linux 9 / Rocky Linux 9x86_64,arm64
Oracle Linux 8 / Red Hat Enterprise Linux 8 / CentOS 8 / Rocky Linux 8x86_64,arm64
Oracle Linux 7 / Red Hat Enterprise Linux 7 / CentOS 7x86_64,arm64
Oracle Linux 6 / Red Hat Enterprise Linux 6 / CentOS 6x86_32、x86_64
Oracle Solaris
Solaris 11(更新 4+)SPARC_64
Canonical
Ubuntu 24.04 LTSx86_64
Ubuntu 22.04 LTSx86_64
Ubuntu 20.04 LTSx86_64
SUSE
SUSE 企业版 Linux 15 / OpenSUSE 15 (15.5)x86_64
SUSE Enterprise Linux 12(12.5+)x86_64
Debian
Debian GNU/Linux 12x86_64
微软 Windows 服务器
Microsoft Windows 2022 服务器x86_64
微软 Windows 2019 服务器x86_64
Microsoft Windows 2016 服务器x86_64
微软Windows
微软 Windows 11x86_64
微软 Windows 10x86_64
苹果
macOS 14x86_64,arm64
macOS 13x86_64,arm64

MySQL 9.0 中已弃用的功能

以下功能在 MySQL 9.0 中已弃用,并且可能会在未来的系列中删除。如果 MySQL 更新说明中有显示替代方案,则你们应更新应用程序并使用它们。

对于使用 MySQL 9.0 中已弃用且已在更高 MySQL 版本中删除的功能的应用程序,从 MySQL 9.0 源复制的语句到运行更高版本的副本时,语句可能会执行失败,或者可能对源和副本产生不同的影响。为了避免此类问题,应修改使用 9.0 中已弃用功能的应用程序以避免这些问题,并尽可能使用替代方案。以下内容为弃用功能,

性能模式 variables_info 表列。 性能模式变量信息表的 MIN_VALUE 和 MAX_VALUE 列现已弃用,并且可能会在未来的 MySQL 版本中删除。相反请使用 Variables_metadata 表中具有相同名称的列(请参阅上文 1.3 章节)。

MySQL 9.0 中删除的功能

以下功能已过时并已在 MySQL 9.0 中删除。如果 MySQL 更新说明中有显示替代方案,则你们应更新应用程序并使用它们。

对于使用 MySQL 9.0 中删除的功能的 MySQL 8.4 应用程序,从 MySQL 8.4 源复制到 MySQL 9.0 副本时,语句可能会执行失败,或者可能对源和副本产生不同的影响。为了避免此类问题,应修改使用 MySQL 9.0 中删除的功能的应用程序以避免这些问题,并尽可能使用替代方案。

mysql_native_password 插件。mysql_native_password 身份验证插件已在 MySQL 8.0 中弃用,已被删除。服务器现在拒绝来自不具有 CLIENT_PLUGIN_AUTH 功能的旧客户端程序的 mysql_native 身份验证请求。
由于此更改,以下服务器选项和变量也已被删除:

–mysql-native-password 服务器选项
–mysql-native-password-proxy-users 服务器选项
default_authentication_plugin 服务器系统变量
给大家介绍一下 mysql_native_password 插件。

mysql_native_password 介绍

从 MySQL 8.0.4 开始,MySQL 默认身份验证插件从 mysql_native_password 改为 caching_sha2_password 。相应地,libmysqlclient 也使用 caching_sha2_password 作为默认的身份验证机制。

删除起因

在这之前 MySQL 5.6/5.7 使用的默认密码插件是 mysql_native_password。mysql_native_password 的特点是不需要加密的连接。该插件验证速度特别快,但是不够安全,因为,mysql_native_password 使用的是于 SHA1 算法,NIST(美国国家标准与技术研究院)在很早之前就已建议停止使用 SHA1 算法,因为 SHA1 和其他哈希算法(例如 MD5)容易被破解。

其实从 MySQL 5.6 开始就引入了更安全的认证机制:ha256_password 认证插件。它使用一个加盐密码(salted password)进行多轮 SHA256 哈希(数千轮哈希,暴力破解更难),以确保哈希值转换更安全。但是,建立安全连接和多轮 hash 加密很耗费时间。虽然安全性更高,但是验证速度不够快。

改进

MySQL 试图结合二者的优点。于是在 MySQL 8.0.3 版本引入了一个新的身份验证插件 caching_sha2_password ,作为sha256_password的代替方案,在sha256_password 的基础上进行了改进补上了短板,既解决安全性问题又解决性能问题。与此同时 sha256_password将退出时代的浪潮。MySQL 预计在未来版本中将其删除。使用 sha256_password 进行身份验证的 MySQL 账户建议转为 caching_sha2_password。

其实 MySQl 早就想在 8.0 版本中替换到 mysql_native_password 插件,到了 9.0 版本直接删除 mysql_native_password 功能其实提前跟大家打过招呼。

总结

MySQL 9.0 版本新增了 EXPLAIN 分析 JSON 输出、DDL 语句新增 Event 语法、性能模式新添加了两个新表,弃用了老版本中的 variables_info 表,删除了 mysql_native_password 认证插件。

这些更新没有带来大的功能改动,对于大多数应用程序来说影响很小,没有当年 MySQL 5.7 发布时带来的 innodb 存储引擎那种给人带来的激动感,更新说明中也没有强调性能改进(估计性能对比 8.4 版本提升不大)。不过这也说明关系型数据库 MySQL 如今的功能以及稳定性方面都已经越来越完善。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1921620.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

成本下降50%,腾讯音乐StarRocks存算分离大规模实践!

作者:腾讯音乐高级数据工程师 陈嘉奇,腾讯音乐高级运营开发工程师 高盛远 小编导读: 腾讯音乐娱乐集团是中国在线音乐娱乐服务开拓者,提供如 QQ 音乐、酷狗音乐等众多知名的移动音频产品。 随着对成本效益的关注不断增强及湖仓一体化技术不断…

公益快报 | 中科亿海微以企业奖学金为纽带,深化校企合作

近日,为回报母校、激励湖南大学机器人视觉感知与控制技术国家工程研究中心广大学生,中科亿海微电子科技(苏州)有限公司(简称“中科亿海微”)捐赠设立企业奖学金。此项奖学金的设立标志着校企合作迈向全方位…

【Google 浏览器离线下载】

Google 浏览器离线下载: https://www.google.cn/chrome/index.html?standalone1#updates 点击“ 在此下载” , 即可下载 Google 浏览器离线版

vue+cesium之加载天地图影像底图与注记

目录 1.创建地图容器2.叠加天地图影像底图与矢量注记 关键代码3.示例效果图 Cesium是默认加载了微软公司的Bing地图,并提供了BingMapslmageryProvider类来加载Bing地图。也就是说,在创建Viewer时,如果不指定lmageryProvider类就默认加载Bing地…

C# .net6使用Hangfire

首先我们先来了解什么是Hangfire? Hangfire 是一个用于 .NET 的任务调度库,允许你在后台运行任务,而不需要依赖外部的任务队列服务或复杂的基础设施。它简化了后台任务的创建、调度和管理过程,使得在 .NET 应用程序中处理长期运行…

《mysql篇》--JDBC编程

JDBC是什么 JDBC就是Java DataBase Connectivity的缩写,翻译过来就很好理解了,就是java连接数据库。所以顾名思义,JDBC就是一种用于执行SQL语句的JavaApl,是Java中的数据库连接规范。为了可以方便的用Java连接各种数据库&#xff…

MURF1660CT-ASEMI智能AI应用MURF1660CT

编辑:ll MURF1660CT-ASEMI智能AI应用MURF1660CT 型号:MURF1660CT 品牌:ASEMI 封装:TO-220F 批号:最新 恢复时间:35ns 最大平均正向电流(IF):16A 最大循环峰值反向…

【学术会议征稿】第五届智能设计国际会议(ICID 2024)

第五届智能设计国际会议(ICID 2024) 2024 5th International Conference on Intelligent Design (ICID 2024) 为贯彻落实国家创新驱动发展战略,积极服务秦创原创新驱动平台建设,助力区域经济高质量创新发展,西安设计联…

nVisual光纤资源管理APP价值分析

nVisual光纤资源管理APP利用数字孪生技术,可以快速创建光纤资源的数字孪生空间,解决“排查难”和“跟踪难”的问题。提供了预先在数字空间进行智能规划模拟变更、自动生成实施步骤和材料清单等功能,大幅度提高了规划的效率与准确性&#xff0…

uniapp实现光标闪烁(配合自己的键盘)

前言 因为公司业务需要&#xff0c;所以我们... 演示 其实就是Chat自动打字效果 代码 键盘请看这篇文件 <template> <view class"list"><view class"title"><text>手机号码</text></view><view class"ty…

怎么提高图片亮度?这四种方法轻松提高图片亮度!

怎么提高图片亮度&#xff1f;在数字图像处理的世界里&#xff0c;图片亮度不足的问题常常如暗夜的阴影般困扰着我们&#xff0c;这一问题不容忽视&#xff0c;因为它犹如一颗定时炸弹&#xff0c;随时可能引发一系列连锁反应&#xff0c;首先&#xff0c;亮度不足的图片如同被…

【轻松拿捏 】Java-static关键字(面试)

Java-static关键字 1. 定义和基本概念 回答要点&#xff1a; 示例回答&#xff1a; 2. static 变量 回答要点&#xff1a; 示例回答&#xff1a; 代码示例&#xff1a; 3. static方法 回答要点&#xff1a; 示例回答&#xff1a; 代码示例&#xff1a; 4. static 代…

Armv8-R内存模型详解

目录 1.内存模型的必要性 2.Armv8-R内存模型分类 2.1 Normal memory 2.2 Device Memory 2.2.1 Gathering 2.2.2 Reordering 2.2.3 Early Write Acknowledgement 3.小结 大家好&#xff0c;今天是悲伤的肌肉。 在调研区域控制器芯片时&#xff0c;发现了S32Z、Stellar …

威纶通触摸屏连接MySQL数据库步骤

目录 概要威纶通支持数据库的触摸屏类型测试Step 1 选择触摸屏型号Step 2 新增数据库服务器Step 3 添加SQL数据库查询功能Step 4 仿真测试 概要 通过使用威纶通带数据库类型的触摸屏&#xff0c;实现连接本地/远程MySQL数据库&#xff0c;并实现数据查询功能 威纶通支持数据库…

【开发环境】搭建PX4+ROS2+MAVROS2+Simulink+Optitrack实物联合仿真环境

搭建PX4ROS2MAVROS2SimulinkOptiTrack实物联合仿真环境 Ubuntu中的安装过程下载并编译PX4固件代码安装ROS2安装VRPN动捕数据转换ROS2话题库安装VRPN库拉取vrpn_client_ros2节点代码并配置VRPN server参数编译软件包启动vrpn_client_ros2节点重命名话题名 /vrpn/fly/pose 为 /ma…

Python爬虫新手实战导航:精选示例项目助你快速上手Python爬虫(含几十个案例源码)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 Python爬虫 📒📝 爬虫小案例(附源码)📝 如何利用这些示例项目进行学习?🎈 获取方式 🎈⚓️ 相关链接 ⚓️📖 介绍 📖 对于Python初学者而言,理论学习固然重要,但若想真正掌握爬虫技术,大量的实际项目训练和…

一篇喂饭级教程Python时序预测常用方法以及代码演示

在时序预测中,常用的方法包括以下几种&#xff1a; A.移动平均法 B.指数平滑法 C.自回归(AR)模型 D.滑动平均(MA)模型 E.自回归滑动平均(ARMA)模型 F.长短期记忆网络(LSTM) 下面我将逐一展示每种方法的代码示例&#xff1a; 1.移动平均法 import numpy as np# 创建时间…

华润万家超市购物卡怎么使用?

前两天整理杂物&#xff0c;翻出来两张华润的礼品卡&#xff0c;好在还没有过期 但是那卡只能在线下使用&#xff0c;而且面值也就一百 让我专门跑一趟华润感觉太不方便了 最后朋友告诉我说&#xff0c;可以在收卡云上面把卡内的余额直接提出来&#xff0c;我两张一百的卡总…

开放式耳机哪款性价比高?这五款超值精品不容错过

喜欢进行户外运动的小伙伴们&#xff0c;应该都很需要一款既可以匹配运动场景&#xff0c;又兼顾音质体验的无线蓝牙耳机吧。而开放式耳机拥有佩戴舒适牢固&#xff0c;不堵塞耳部&#xff0c;不影响外部声音传入耳部的优点&#xff0c;完全可以成为运动健身人士户外运动的好伴…

XCP协议介绍(二)

五、XCP命令简介 5.1 数据包简介 XCP的数据包分为两类&#xff1a;CTO(Command Transfer Object)与DTO(Data Transfer Object) CMD&#xff1a;指的是上位机下发给下位机的一些命令&#xff0c;比如连接命令FF&#xff0c;解锁&#xff0c;获取状态等一些和下位机交互的命令&…