MySQL 和 MariaDB 版本管理的历史背景及差异

这篇具有很好参考价值的文章主要介绍了MySQL 和 MariaDB 版本管理的历史背景及差异。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在本文中,我们将探讨 MySQL 和 MariaDB 服务生命周期和版本管理方式两个方面目前的状况及相关历史背景。

作者:Peter Zaitsev

本文来源:Percona 官网博客

  • 爱可生开源社区出品。

需要说明的是 MySQL 和 MariaD B都有社区版和企业版。对于 MySQL,这两个版本都是由同一家公司(Oracle)提供,遵循相同的版本编号体系,企业版包含更丰富的功能。对于 MariaDB,社区版由 MariaDB 基金会提供,而企业版由 MariaDB PLC 提供,采用独有的生命周期 与功能配置。为简单起见,我们将重点关注社区版。

MariaDB

你可能了解到,MariaDB 起初是 MySQL 的一个分支。早期。两者发展模式相似。但从 2014 年 MariaDB 10 版开始,情况大为不同。这一次,MariaDB 不再与 MySQL 版本匹配,从而抛弃了之前与 MySQL 5.1 和 MySQL 5.5 版本一致的模式。

获得独立的版本体系允许 MariaDB 以更快的节奏独立创新,而不会因为与 MySQL 版本号相同而产生用户误导。例如,MariaDB 曾经有 5.2 和 5.3 两个版本,但 MySQL 没有对应的版本号。

MariaDB 发展迅速。紧接着 2015 年发布了 MariaDB 10.1 版本,2017 年发布了 MariaDB 10.2 版本。此后,主版本每个 1-2 年发布一次,2021 年发布了 MariaDB 10.6 版。不过,每一个版本都提供 5 年的长期支持期限,这给工程团队带来了额外负担。

为了解决这个问题,MariaDB 从 2021 年底开始实施“创新版模型”。与 Ubuntu Linux 发布模式类似,每个季度发布一个短期支持版本(支持 1 年),同时还会选择性发布 LTS 版本(至少 5 年)。短期支持版本和长期支持版本遵循相同的版本编号方式。

最近,MariaDB 也将主版本从 10 改为 11。产品经理 Kaj Arno 解释说,这主要是计划对优化器及其成本模型进行复杂修改所致。目前新 11 系列还没有 LTS 版本,最新的 LTS 版本是 MariaDB 10.11,支持周期至 2028 年 2 月。

MySQL

起初,在 Oracle 的领导下,MySQL 继续遵循原有的版本生发周期。每隔几年,就会有大的功能版本,还会有“仅修复错误”的小版本。MySQL 5.5、MySQL 5.6 和 MySQL 5.7 就是这种情况。

这种发布周期的好处是稳定!次要版本升级的风险相当低,如果需要回滚,可以通过快速交换二进制文件来完成,而不需要对数据执行任何操作。然而,与所有事情一样,都需要权衡。这种方法的缺点是新功能的推出缓慢以及主要版本之间的巨大变化,使得升级可能变得混乱且耗时。

在 MySQL 8 中发生了巨大的变化。MySQL 8 看起来像是一个“长期迭代版”。虽然最初的 GA 版本于 2018 年 4 月发布,但我们已经五年没有看到新的主要版本了!这并不意味着 MySQL 8 没有创新;相反,现在的 MySQL 8 与 2018 年发布的版本有很大不同,因为在每个小版本中,都会引入新功能并修复错误。

如果您喜欢更快地获得新功能,那一定会喜欢这种新的发布方法。从理论上讲,这也意味着这些“功能版本”升级的风险较小,与过去主要版本需要数年的工作相比,这些升级只需要几个月的开发工作。然而,实际情况并非如此,因为某些版本包含新功能,其中的错误足以导致版本召回。更糟糕的是,MySQL 8 一旦升级到新的版本,无法保证以前的版本能够操作相同的数据。

MySQL 团队也认识到 MySQL 8 发布方式的问题;因此,接下来将引入新的发布模型。该模型引入了 Innovation 版本,大约每季度发布一次,并且仅支持最新的创新版本(即,任何错误修复都将与新功能一起推出,并作为下一个创新版本推出,类似于 MySQL 8.0 现在的运行方式)。另一种版本是 LTS 版本,该版本每隔几年发布一次,并由 Oracle 支持 8 年(5 年标准 + 3 年扩展)。

MySQL LTS 版本的运行方式与 MySQL 8 之前的 MySQL 运行方式类似。创新版本有点类似于 MySQL 团队在某些时候使用的“里程碑版本”,但里程碑版本不被视为“生产就绪”,而是用于开发和预览版、创新版被视为“生产级质量”。

MySQL 8.0 在此版本模型中占有特殊的地位。目前,它基本上是一个创新风格版本,但随着 MySQL 8.0.34 的发布,它将成为仅修复错误的 LTS 版本。

差异

有趣的是,两个社区似乎都认识到我们 既需要高速创新又需要稳定,但也不能在同一个发行系列中真正同时拥有这两种方式。还需要控制支持和维护成本;因此,不能拥有太多积极支持的版本。

MariaDB 和 MySQL 都得出结论,他们需要同时注重创新速度的 LTS 版本和版本。

MySQL 和 MariaDB 的 LTS 发布节奏也可能相似。MySQL 的 LTS 版本大约每两年发布一次,这与 MariaDB 类似,“至少每隔一年”发布一次。不同之处在于,MariaDB 还与主要 Linux 发行版合作,使 MariaDB LTS 版本与 Linux 发行版 LTS 发行计划保持一致,而 MySQL 没有声明任何此类目标。

存在差异的地方在于非 LTS 版本的处理方式。

当在有限时间内发布“仅修复错误”的版本时,MariaDB 会选择“短期支持”路线,而 MySQL 选择支持滚动创新版本的路径,其中错误修复仅包含在最新的创新版本中。看看这些选择如何发挥作用将会很有趣:

  • MariaDB 的方法更加“用户友好”,因为它使用户可以更好地控制何时升级到下一个功能版本。
  • MySQL 的方法减少了支持版本所需的工作。

另一个重要的区别是支持什么类型的升级。

  • MySQL 仅支持升级到下一个主要版本(即,您不能直接从 MySQL 5.6 升级到 MySQL 8)。
  • MariaDB 支持在升级中跳过主要版本。

更多技术文章,请访问:https://opensource.actionsky.com/

关于 SQLE

爱可生开源社区的 SQLE 是一款面向数据库使用者和管理者,支持多场景审核,支持标准化上线流程,原生支持 MySQL 审核且数据库类型可扩展的 SQL 审核工具。文章来源地址https://www.toymoban.com/news/detail-663162.html

SQLE 获取

类型 地址
版本库 https://github.com/actiontech/sqle
文档 https://actiontech.github.io/sqle-docs/
发布信息 https://github.com/actiontech/sqle/releases
数据审核插件开发文档 https://actiontech.github.io/sqle-docs/docs/dev-manual/plugins/howtouse

到了这里,关于MySQL 和 MariaDB 版本管理的历史背景及差异的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【go语言】1.1.1 Go 语言的历史和背景

    Go 语言,也被称为 Golang,是一种静态强类型、编译型的开源编程语言。Go 语言的出现是为了解决当下的软件开发问题,特别是大规模软件系统的开发。 Go 语言的设计者包括 Robert Griesemer、Rob Pike 和 Ken Thompson,他们都是在 Google 工作的资深工程师。他们发现当时的编程语言,无

    2024年02月16日
    浏览(39)
  • TCP/IP出现的背景及其历史【图解TCP/IP(笔记八)】

    从军用技术的应用谈起 20世纪60年代,很多大学和研究机构都开始着力于新的通信技术。其中有一家以美国国防部(DoD,The Department of Defense)为中心的组织也展开了类似的研究。 DoD认为研发新的通信技术对于国防军事有着举足轻重的作用。该组织希望在通信传输的过程中,即

    2024年02月13日
    浏览(52)
  • GO语言从入门到实战-Go语言简介:历史背景、发展现状及语言特性

    一、简述Go语言背景和发展         1. 软件开发的新挑战 多核硬件架构 超大规模分布式计算集群 Web 模式导致的前所未有的开发规模和更新速度         2. Go的三位创始人         Rob Pike         Unix 的早期开发者         UTF-8 创始人         Ken Thompson     

    2024年02月07日
    浏览(41)
  • MySQL和MariaDB的版本对应关系

    MariaDB 10.0和MariaDB 10.1可以作为MySQL 5.6的有限替代。 MariaDB 10.2可以作为MySQL 5.7的有限替代。 一,目前最新版本 MariaDB 10.5.8 10.4.17 10.3.27 10.2.36 MySQL 8.0.23 二,oracle MySQL版本和MariaDB版本对应表: MariaDB版本                               MySQL版本 MariaDB 10.3 发布时间2018     

    2024年02月12日
    浏览(53)
  • MariaDB与PostgreSQL:特点、用例、差异和如何选择?

    数据库本质上是任何软件的支柱。随着市场上的多个数据库以及开源数据库的日益普及,许多开发人员和企业都有一个共同的担忧:您如何选择合适的? 在本文中,我们将讨论最流行的两个开源数据库——MariaDB和PostgreSQL。 虽然PostgreSQL已经存在了20年并且在稳定性方面非常出

    2024年02月19日
    浏览(42)
  • 开源免费的MySQL和MariaDB图形化管理软件

    2024年4月7日,周日凌晨 有很多开源免费的MySQL和MariaDB图形化管理界面可供选择。 以下是一些常用的工具: phpMyAdmin :phpMyAdmin 是一个用 PHP 编写的免费开源的 MySQL 和 MariaDB 管理工具,它提供了一个基于 Web 的界面,可以通过浏览器访问。phpMyAdmin 支持管理数据库、表、字段、

    2024年04月12日
    浏览(36)
  • MySQL/MariaDB初步

    1,    raise errorclass(errno, errval) pymysql.err.OperationalError: (1698, \\\"Access denied for user \\\'root\\\'@\\\'localhost\\\'\\\") 命令行操作: set password for root@localhost = password(\\\"62YE\\\"); Query OK, 0 rows affected (0.001 sec) MariaDB [PDF2PNG] set password for ming@localhost = password(\\\"62YE\\\") ; Query OK, 0 rows affected (0.001 sec) 然后再conn即可

    2024年01月24日
    浏览(33)
  • OpenCV各版本差异

    OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了大量的计算机视觉、图像处理和数值通用算法。这个库可以在Windows、Linux、Mac OS和Android等操作系统上运行,支持C++、Python和Java等编程语言。OpenCV自从2000年首次发布以来,已经有多个版本,每个版本都

    2024年02月11日
    浏览(33)
  • 微软 Windows Server 版本对比:了解不同版本之间的差异

    类似于客户端 Windows 版本,Windows Server 也分别提供了各种版本。 Windows Server 是一个操作系统,旨在管理和控制它周围的网络基础架构。每个版本都是针对不同的受众设计的,为他们提供独特的工具和功能,以更有效地管理他们的环境。 此外,它们专为不同尺寸的组织而设计

    2024年02月15日
    浏览(49)
  • 使用MariaDB数据库管理系统

    初始化MariaDB服务 //再确认mariadb数据库软件程序安装完毕并成功启动后请不要立即使用。为了确保数据库的安全性和正常运转,需要做以下5个操作 1.设置root管理员在数据库中的密码值(该密码并非root管理员在系统中的密码,这里的密码值默认应该为空) 2.设置root管理员在数据

    2024年02月19日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包