0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

MySQL和MariaDB版本管理的歷史背景及差異

OSC開源社區(qū) ? 來源: OSCHINA 社區(qū) ? 2023-08-29 10:24 ? 次閱讀

來源 | OSCHINA 社區(qū)

作者 | 愛可生開源社區(qū)

在本文中,我們將探討 MySQL 和 MariaDB 服務(wù)生命周期和版本管理方式兩個(gè)方面目前的狀況及相關(guān)歷史背景。

需要說明的是 MySQL 和 MariaD B 都有社區(qū)版和企業(yè)版。對(duì)于 MySQL,這兩個(gè)版本都是由同一家公司Oracle)提供,遵循相同的版本編號(hào)體系,企業(yè)版包含更豐富的功能。對(duì)于 MariaDB,社區(qū)版由 MariaDB 基金會(huì)提供,而企業(yè)版由 MariaDB PLC 提供,采用獨(dú)有的生命周期 與功能配置。為簡(jiǎn)單起見,我們將重點(diǎn)關(guān)注社區(qū)版。

MariaDB

你可能了解到,MariaDB 起初是 MySQL 的一個(gè)分支。早期。兩者發(fā)展模式相似。但從 2014 年 MariaDB 10 版開始,情況大為不同。這一次,MariaDB 不再與 MySQL 版本匹配,從而拋棄了之前與 MySQL 5.1 和 MySQL 5.5 版本一致的模式。

獲得獨(dú)立的版本體系允許 MariaDB 以更快的節(jié)奏獨(dú)立創(chuàng)新,而不會(huì)因?yàn)榕c MySQL 版本號(hào)相同而產(chǎn)生用戶誤導(dǎo)。例如,MariaDB 曾經(jīng)有 5.2 和 5.3 兩個(gè)版本,但 MySQL 沒有對(duì)應(yīng)的版本號(hào)。

MariaDB 發(fā)展迅速。緊接著 2015 年發(fā)布了 MariaDB 10.1 版本,2017 年發(fā)布了 MariaDB 10.2 版本。此后,主版本每個(gè) 1-2 年發(fā)布一次,2021 年發(fā)布了 MariaDB 10.6 版。不過,每一個(gè)版本都提供 5 年的長(zhǎng)期支持期限,這給工程團(tuán)隊(duì)帶來了額外負(fù)擔(dān)。

為了解決這個(gè)問題,MariaDB 從 2021 年底開始實(shí)施 “創(chuàng)新版模型”。與 Ubuntu Linux 發(fā)布模式類似,每個(gè)季度發(fā)布一個(gè)短期支持版本(支持 1 年),同時(shí)還會(huì)選擇性發(fā)布 LTS 版本(至少 5 年)。短期支持版本和長(zhǎng)期支持版本遵循相同的版本編號(hào)方式。

最近,MariaDB 也將主版本從 10 改為 11。產(chǎn)品經(jīng)理 Kaj Arno 解釋說,這主要是計(jì)劃對(duì)優(yōu)化器及其成本模型進(jìn)行復(fù)雜修改所致。目前新 11 系列還沒有 LTS 版本,最新的 LTS 版本是 MariaDB 10.11,支持周期至 2028 年 2 月。

MySQL

起初,在 Oracle 的領(lǐng)導(dǎo)下,MySQL 繼續(xù)遵循原有的版本生發(fā)周期。每隔幾年,就會(huì)有大的功能版本,還會(huì)有 “僅修復(fù)錯(cuò)誤” 的小版本。MySQL 5.5、MySQL 5.6 和 MySQL 5.7 就是這種情況。

這種發(fā)布周期的好處是穩(wěn)定!次要版本升級(jí)的風(fēng)險(xiǎn)相當(dāng)?shù)?,如果需要回滾,可以通過快速交換二進(jìn)制文件來完成,而不需要對(duì)數(shù)據(jù)執(zhí)行任何操作。然而,與所有事情一樣,都需要權(quán)衡。這種方法的缺點(diǎn)是新功能的推出緩慢以及主要版本之間的巨大變化,使得升級(jí)可能變得混亂且耗時(shí)。

在 MySQL 8 中發(fā)生了巨大的變化。MySQL 8 看起來像是一個(gè) “長(zhǎng)期迭代版”。雖然最初的 GA 版本于 2018 年 4 月發(fā)布,但我們已經(jīng)五年沒有看到新的主要版本了!這并不意味著 MySQL 8 沒有創(chuàng)新;相反,現(xiàn)在的 MySQL 8 與 2018 年發(fā)布的版本有很大不同,因?yàn)樵诿總€(gè)小版本中,都會(huì)引入新功能并修復(fù)錯(cuò)誤。

如果您喜歡更快地獲得新功能,那一定會(huì)喜歡這種新的發(fā)布方法。從理論上講,這也意味著這些 “功能版本” 升級(jí)的風(fēng)險(xiǎn)較小,與過去主要版本需要數(shù)年的工作相比,這些升級(jí)只需要幾個(gè)月的開發(fā)工作。然而,實(shí)際情況并非如此,因?yàn)槟承┌姹景鹿δ?,其中的錯(cuò)誤足以導(dǎo)致版本召回。更糟糕的是,MySQL 8 一旦升級(jí)到新的版本,無法保證以前的版本能夠操作相同的數(shù)據(jù)。

MySQL 團(tuán)隊(duì)也認(rèn)識(shí)到 MySQL 8 發(fā)布方式的問題;因此,接下來將引入新的發(fā)布模型。該模型引入了 Innovation 版本,大約每季度發(fā)布一次,并且僅支持最新的創(chuàng)新版本(即,任何錯(cuò)誤修復(fù)都將與新功能一起推出,并作為下一個(gè)創(chuàng)新版本推出,類似于 MySQL 8.0 現(xiàn)在的運(yùn)行方式)。另一種版本是 LTS 版本,該版本每隔幾年發(fā)布一次,并由 Oracle 支持 8 年(5 年標(biāo)準(zhǔn) + 3 年擴(kuò)展)。

MySQL LTS 版本的運(yùn)行方式與 MySQL 8 之前的 MySQL 運(yùn)行方式類似。 創(chuàng)新版本有點(diǎn)類似于 MySQL 團(tuán)隊(duì)在某些時(shí)候使用的 “里程碑版本”,但里程碑版本不被視為 “生產(chǎn)就緒”,而是用于開發(fā)和預(yù)覽版、創(chuàng)新版被視為 “生產(chǎn)級(jí)質(zhì)量”。

MySQL 8.0 在此版本模型中占有特殊的地位。目前,它基本上是一個(gè)創(chuàng)新風(fēng)格版本,但隨著 MySQL 8.0.34 的發(fā)布,它將成為僅修復(fù)錯(cuò)誤的 LTS 版本。

差異

有趣的是,兩個(gè)社區(qū)似乎都認(rèn)識(shí)到我們 既需要高速創(chuàng)新又需要穩(wěn)定,但也不能在同一個(gè)發(fā)行系列中真正同時(shí)擁有這兩種方式。還需要控制支持和維護(hù)成本;因此,不能擁有太多積極支持的版本。

MariaDB 和 MySQL 都得出結(jié)論,他們需要同時(shí)注重創(chuàng)新速度的 LTS 版本和版本。

MySQL 和 MariaDB 的 LTS 發(fā)布節(jié)奏也可能相似。MySQL 的 LTS 版本大約每?jī)赡臧l(fā)布一次,這與 MariaDB 類似,“至少每隔一年” 發(fā)布一次。不同之處在于,MariaDB 還與主要 Linux 發(fā)行版合作,使 MariaDB LTS 版本與 Linux 發(fā)行版 LTS 發(fā)行計(jì)劃保持一致,而 MySQL 沒有聲明任何此類目標(biāo)。

存在差異的地方在于非 LTS 版本的處理方式。

當(dāng)在有限時(shí)間內(nèi)發(fā)布 “僅修復(fù)錯(cuò)誤” 的版本時(shí),MariaDB 會(huì)選擇 “短期支持” 路線,而 MySQL 選擇支持滾動(dòng)創(chuàng)新版本的路徑,其中錯(cuò)誤修復(fù)僅包含在最新的創(chuàng)新版本中。看看這些選擇如何發(fā)揮作用將會(huì)很有趣:

MariaDB 的方法更加 “用戶友好”,因?yàn)樗褂脩艨梢愿玫乜刂坪螘r(shí)升級(jí)到下一個(gè)功能版本。

MySQL 的方法減少了支持版本所需的工作。

另一個(gè)重要的區(qū)別是支持什么類型的升級(jí)。

MySQL 僅支持升級(jí)到下一個(gè)主要版本(即,您不能直接從 MySQL 5.6 升級(jí)到 MySQL 8)。

MariaDB 支持在升級(jí)中跳過主要版本。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11207

    瀏覽量

    208721
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3215

    瀏覽量

    42329
  • MySQL
    +關(guān)注

    關(guān)注

    1

    文章

    797

    瀏覽量

    26399

原文標(biāo)題:MySQL和MariaDB版本管理的歷史背景及差異

文章出處:【微信號(hào):OSC開源社區(qū),微信公眾號(hào):OSC開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    手把手教你入門MySQL零基礎(chǔ)入門教程!

    和DCL第6節(jié) SQL語(yǔ)句課堂實(shí)踐精確授權(quán)優(yōu)先第7節(jié) 復(fù)習(xí)MySQL基礎(chǔ)第8節(jié) 破解MariaDB 5.5 root密碼第9節(jié) MySQL備份的分類和備份的兩大要素第10節(jié) Innodb存儲(chǔ)引擎的
    發(fā)表于 06-15 13:20

    MySQL零基礎(chǔ)入門教程!

    和DCL第6節(jié) SQL語(yǔ)句課堂實(shí)踐精確授權(quán)優(yōu)先第7節(jié) 復(fù)習(xí)MySQL基礎(chǔ)第8節(jié) 破解MariaDB 5.5 root密碼第9節(jié) MySQL備份的分類和備份的兩大要素第10節(jié) Innodb存儲(chǔ)引擎的
    發(fā)表于 06-17 14:54

    干貨分享:MySQL零基礎(chǔ)入門視頻教程!

    干貨分享:MySQL零基礎(chǔ)入門視頻教程!首先給大家介紹一下數(shù)據(jù)庫(kù)工程師,數(shù)據(jù)庫(kù)工程師(Database Engineer),是從事管理和維護(hù)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS) 的相關(guān)工作人員的統(tǒng)稱,他屬于運(yùn)
    發(fā)表于 06-22 14:22

    0基礎(chǔ)學(xué)Mysql:mysql入門視頻教程!

    DDL語(yǔ)句第5節(jié) SQL語(yǔ)句之DML語(yǔ)句和DCL第6節(jié) SQL語(yǔ)句課堂實(shí)踐精確授權(quán)優(yōu)先第7節(jié) 復(fù)習(xí)MySQL基礎(chǔ)第8節(jié) 破解MariaDB 5.5 root密碼第9節(jié) MySQL備份的分類和備份的兩大
    發(fā)表于 07-08 10:51

    mysql零基礎(chǔ)入門視頻教程免費(fèi)分享!

    本帖最后由 x910378112 于 2017-7-14 10:53 編輯 mysql零基礎(chǔ)入門視頻教程免費(fèi)分享! MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),由瑞典MySQL AB
    發(fā)表于 07-13 11:08

    干貨分享:MySQL零基礎(chǔ)入門視頻教程

    、 SQL語(yǔ)句課堂實(shí)踐精確授權(quán)優(yōu)先七、 復(fù)習(xí)MySQL基礎(chǔ)八、 破解MariaDB 5.5 root密碼九、 MySQL備份的分類和備份的兩大要素十、 Innodb存儲(chǔ)引擎的版本級(jí)別十
    發(fā)表于 07-27 13:57

    MySQL零基礎(chǔ)入門視頻教程!

    百度云盤分享:MySQL零基礎(chǔ)入門視頻教程!首先給大家介紹一下數(shù)據(jù)庫(kù)工程師,數(shù)據(jù)庫(kù)工程師(Database Engineer),是從事管理和維護(hù)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS) 的相關(guān)工作人員的統(tǒng)稱,他
    發(fā)表于 08-13 11:39

    全球唯一:MySQL社區(qū)2018年度公司貢獻(xiàn)獎(jiǎng)?lì)C給阿里云

    的自定義邏輯回滾,以輕松應(yīng)對(duì)在 MySQL 上的誤操作,降低運(yùn)維風(fēng)險(xiǎn)。FlashBack 可以在 Aliyun RDS MySQL 公有云上使用,并在社區(qū)版本 MariaDB 10.
    發(fā)表于 04-25 11:51

    如何在NAS網(wǎng)絡(luò)存儲(chǔ)上安裝使用My SQL數(shù)據(jù)庫(kù)?

    `你可以在TOS 中安裝My SQL 服務(wù)器,以便你通過My SQL 高效的管理你的數(shù)據(jù)。TOS 應(yīng)用中心提供的My SQL 服務(wù)器版本MariaDB,這是一個(gè)被廣泛使用的數(shù)據(jù)庫(kù)。1.單擊桌面
    發(fā)表于 04-21 17:08

    MySQL安裝使用說明Windows版本

    MySQL安裝使用說明Windows版本
    發(fā)表于 10-23 16:29 ?0次下載
    <b class='flag-5'>MySQL</b>安裝使用說明Windows<b class='flag-5'>版本</b>

    navicat for mysql使用方法

    Navicat for MySQL 是一套管理和開發(fā) MySQLMariaDB 的理想解決方案,支持單一程序,可同時(shí)連接到 MySQL
    發(fā)表于 12-26 11:54 ?1.4w次閱讀
    navicat for <b class='flag-5'>mysql</b>使用方法

    MariaDBMySQL本質(zhì)的區(qū)別詳細(xì)資料概述

    MariaDBMySQL源代碼的一個(gè)分支,在意識(shí)到Oracle會(huì)對(duì)MySQL許可做什么后分離了出來(MySQL先后被Sun、Oracle收購(gòu))。除了作為一個(gè)
    的頭像 發(fā)表于 06-18 12:53 ?5842次閱讀

    如何完成Mysql主從復(fù)制的在線配置

    Percona XtraBackup(簡(jiǎn)稱PXB)是 Percona 公司開發(fā)的一個(gè)用于 MySQL 數(shù)據(jù)庫(kù)物理熱備的備份工具,支持 MySQl(Oracle)、Percona Server 和 MariaDB,并且全部開源,可
    的頭像 發(fā)表于 07-29 18:27 ?2136次閱讀
    如何完成<b class='flag-5'>Mysql</b>主從復(fù)制的在線配置

    MariaDB有哪些比MySQL厲害的地方?

    近年來,不少程序員在吹捧 MariaDB,拋棄 MySQL。本文總結(jié)了一些 MariaDB 強(qiáng)過 MySQL 的地方,分享給大家! MySQL
    的頭像 發(fā)表于 03-11 16:21 ?1516次閱讀
    <b class='flag-5'>MariaDB</b>有哪些比<b class='flag-5'>MySQL</b>厲害的地方?

    基于樹莓派的開源庫(kù)存管理系統(tǒng)和MySQL數(shù)據(jù)庫(kù)

    我準(zhǔn)備使用?Raspberry Pi 設(shè)置一個(gè)用 PHP 編寫的開源庫(kù)存管理系統(tǒng)和 MySQL 數(shù)據(jù)庫(kù)。用 PHP 編寫的帶有 MySQL/MariaDB 數(shù)據(jù)庫(kù)的開源庫(kù)存
    發(fā)表于 12-19 16:58 ?0次下載