MySQL不再支援Berkeley DB 轉而新增外掛(轉)
MySQL不再支援Berkeley DB 轉而新增外掛(轉)[@more@]作者:IT168 來自:IT168
在最新的5.1.12版中,MySQL將把Berkeley DB(BDB)儲存引擎移出所支援的資料庫引擎列表。有些觀察人士認為,這一行動與Oracle收購Sleepycat有關,而下一個可能被移出的可能是 InnoDB。然而MySQL架構主管布萊恩•阿克爾(Brian Aker)表示,他們不會放棄InnoDB,此次放棄Berkeley引擎是出於技術原因。布萊恩•阿克爾同時宣佈MySQL公司將釋出新一款的用於 MySQL的memcache儲存引擎外掛。
此事與Oracle收購Sleepycat與Innobase的訊息之間的關係是顯而易見的。有人認為Oracle是為了破壞MySQL的業務,以及放棄支援BDB引擎的決定。但阿克爾表示事情不是這樣。
MySQL、Oracle各執一詞
如果不是針對Oracle,為什麼要放棄BDB呢?一種可能是,BDB引擎應用不夠廣泛。阿克爾稱,Debian應該是唯一一個帶有BDB支援的 MySQL合作商,而“MySQL的主程式啟用它的方式也很奇怪”。“我相信實際的安裝數量屈指可數。並不是說BDB引擎本身不好,更主要的原因是 InnoDB有一個更活躍的開發團隊在支援。在開源世界中,活躍的程式碼是使用廣泛的主要原因。”
Oracle嵌入式系統營銷副總裁雷克•王(Rex Wang)表示,實際上是Berkeley DB開發團隊要求取消支援的。“據我們所知,現在的MySQL已經幾乎不再使用Berkeley DB,所以我們(Oracle)的使用者群並沒有產生衝突。”
雖然BDB使用不算廣泛,但是,阿克爾表示BDB不會從MySQL 5.0及以前的版本中消失。所以安裝了MySQL 4.x或MySQL 5.0.x,並使用BDB的使用者無需為此擔心。阿克爾還強調,“MySQL從來沒有為BDB提供商業支援,所以無需任何更改。”
MySQL在放棄BDB的事情上沒有太過聲張,但卻寫入了5.1.12版本的MySQL更新說明中。5.1版一直被視為測試版,5.1.12也還沒有釋出,因此MySQL沒有就此事發布正式宣告也不足為奇。
有一些特別的分析人士抱怨說,這是MySQL缺乏與使用者溝通的表現之一,並認為接下來遭此“橫禍”的大概會是InnoDB。
阿克爾稱,放棄BDB並不意味著接下來將要針對InnoDB發難,也不意味著InnoDB被Oracle收購之後MySQL將要拋棄InnoDB儲存引擎。“我的狗總認為所有松鼠都是賊。上星期我花了幾個小時來整理InnoDB介面的程式碼。我發現仍然有Heikki加入的新程式碼。幾個月前我還與人談論如何擴充套件MySQL中的SQL語法來平衡InnoDB中的全文檢索支援。沒有任何跡象表明InnoDB將要從此消失,或者Oracle停止對它進行支援。” 而且MySQL有什麼理由拋棄InnoDB?我們的使用者中有許多人還在使用它。我做網站的時候也要用到,所以我個人很希望它順利執行下去。”
Oracle嵌入式系統營銷副總裁雷克•王指出,Oracle會繼續支援用於MySQL的InnoDB儲存引擎。“InnoDB目前是MySQL中使用最多的事務型資料儲存引擎,而Oracle會繼續向MySQL提供InnoDB支援,包括推進更新和全面支援。所以說MySQL和Oracle沒有必要繼續支援第二個事務型儲存引擎Berkeley DB。”他強調BDB是MySQL的第一個事務型引擎,但InnoDB發展迅速,已經成為使用者的首選。“因為InnoDB全力支援唯一的使用者MySQL,而Berkeley DB則要面對一系列使用者和開源社群。MySQL使用的是修改版本的BDB,驅動本身並沒有針對它進行最佳化,這種情況保持了許多年。而InnoDB一直在進行針對MySQL的最佳化,目前已經成熟穩定。”
外掛:Plugins anyone?
開源的優勢在於任何需要的人都可以進行選擇使用。如果開源社群有興趣繼續支援BDB,阿克爾認為把BDB製作為儲存引擎外掛是很容易的事。並舉出以外掛形式加入MySQL而沒有整合在內的引擎例子,如PrimeBase XT的MySQL事務型引擎,和Solid Information Technology的MySQL儲存引擎。
阿克爾還提到他所開發的memcache儲存引擎外掛,該外掛可以為MySQL直接加入Memcached功能,而無需單獨執行Memcached。 Memcached是一些高流量網站(如LiveJournal)透過允許訪問者訪問記憶體資訊,而無需訪問磁碟來提高效能的工具。阿克爾稱,使用 Memcache作為儲存引擎會使開發人員更加輕鬆。“資料的往返成本會得到控制,因為資料可以直接從資料庫中傳送。你也可以簡單使用SELECT語句來比較memcache與資料庫內容的區別。使用更輕鬆,整合更容易,往返資料量更少……全部考慮進來是個非常好的主意。”
這一外掛還在早期開發中。阿克爾稱它為“前Alpha版本”,所以有些SQL語句可能還無法在memcache中執行。阿克爾說,SELECT、 UPDATE、DELETE和INSERT語句都可以執行,而ORDER BY、REPLACE等一些語句還不能執行。
Memcache會不會成為MySQL的主流元件?阿克爾稱,“這取決於需求和使用。目前將memcache置於MySQL主線之外進行開發更加快捷。我相信有一天可以將它們合併在一起。”
在最新的5.1.12版中,MySQL將把Berkeley DB(BDB)儲存引擎移出所支援的資料庫引擎列表。有些觀察人士認為,這一行動與Oracle收購Sleepycat有關,而下一個可能被移出的可能是 InnoDB。然而MySQL架構主管布萊恩•阿克爾(Brian Aker)表示,他們不會放棄InnoDB,此次放棄Berkeley引擎是出於技術原因。布萊恩•阿克爾同時宣佈MySQL公司將釋出新一款的用於 MySQL的memcache儲存引擎外掛。
此事與Oracle收購Sleepycat與Innobase的訊息之間的關係是顯而易見的。有人認為Oracle是為了破壞MySQL的業務,以及放棄支援BDB引擎的決定。但阿克爾表示事情不是這樣。
MySQL、Oracle各執一詞
如果不是針對Oracle,為什麼要放棄BDB呢?一種可能是,BDB引擎應用不夠廣泛。阿克爾稱,Debian應該是唯一一個帶有BDB支援的 MySQL合作商,而“MySQL的主程式啟用它的方式也很奇怪”。“我相信實際的安裝數量屈指可數。並不是說BDB引擎本身不好,更主要的原因是 InnoDB有一個更活躍的開發團隊在支援。在開源世界中,活躍的程式碼是使用廣泛的主要原因。”
Oracle嵌入式系統營銷副總裁雷克•王(Rex Wang)表示,實際上是Berkeley DB開發團隊要求取消支援的。“據我們所知,現在的MySQL已經幾乎不再使用Berkeley DB,所以我們(Oracle)的使用者群並沒有產生衝突。”
雖然BDB使用不算廣泛,但是,阿克爾表示BDB不會從MySQL 5.0及以前的版本中消失。所以安裝了MySQL 4.x或MySQL 5.0.x,並使用BDB的使用者無需為此擔心。阿克爾還強調,“MySQL從來沒有為BDB提供商業支援,所以無需任何更改。”
MySQL在放棄BDB的事情上沒有太過聲張,但卻寫入了5.1.12版本的MySQL更新說明中。5.1版一直被視為測試版,5.1.12也還沒有釋出,因此MySQL沒有就此事發布正式宣告也不足為奇。
有一些特別的分析人士抱怨說,這是MySQL缺乏與使用者溝通的表現之一,並認為接下來遭此“橫禍”的大概會是InnoDB。
阿克爾稱,放棄BDB並不意味著接下來將要針對InnoDB發難,也不意味著InnoDB被Oracle收購之後MySQL將要拋棄InnoDB儲存引擎。“我的狗總認為所有松鼠都是賊。上星期我花了幾個小時來整理InnoDB介面的程式碼。我發現仍然有Heikki加入的新程式碼。幾個月前我還與人談論如何擴充套件MySQL中的SQL語法來平衡InnoDB中的全文檢索支援。沒有任何跡象表明InnoDB將要從此消失,或者Oracle停止對它進行支援。” 而且MySQL有什麼理由拋棄InnoDB?我們的使用者中有許多人還在使用它。我做網站的時候也要用到,所以我個人很希望它順利執行下去。”
Oracle嵌入式系統營銷副總裁雷克•王指出,Oracle會繼續支援用於MySQL的InnoDB儲存引擎。“InnoDB目前是MySQL中使用最多的事務型資料儲存引擎,而Oracle會繼續向MySQL提供InnoDB支援,包括推進更新和全面支援。所以說MySQL和Oracle沒有必要繼續支援第二個事務型儲存引擎Berkeley DB。”他強調BDB是MySQL的第一個事務型引擎,但InnoDB發展迅速,已經成為使用者的首選。“因為InnoDB全力支援唯一的使用者MySQL,而Berkeley DB則要面對一系列使用者和開源社群。MySQL使用的是修改版本的BDB,驅動本身並沒有針對它進行最佳化,這種情況保持了許多年。而InnoDB一直在進行針對MySQL的最佳化,目前已經成熟穩定。”
外掛:Plugins anyone?
開源的優勢在於任何需要的人都可以進行選擇使用。如果開源社群有興趣繼續支援BDB,阿克爾認為把BDB製作為儲存引擎外掛是很容易的事。並舉出以外掛形式加入MySQL而沒有整合在內的引擎例子,如PrimeBase XT的MySQL事務型引擎,和Solid Information Technology的MySQL儲存引擎。
阿克爾還提到他所開發的memcache儲存引擎外掛,該外掛可以為MySQL直接加入Memcached功能,而無需單獨執行Memcached。 Memcached是一些高流量網站(如LiveJournal)透過允許訪問者訪問記憶體資訊,而無需訪問磁碟來提高效能的工具。阿克爾稱,使用 Memcache作為儲存引擎會使開發人員更加輕鬆。“資料的往返成本會得到控制,因為資料可以直接從資料庫中傳送。你也可以簡單使用SELECT語句來比較memcache與資料庫內容的區別。使用更輕鬆,整合更容易,往返資料量更少……全部考慮進來是個非常好的主意。”
這一外掛還在早期開發中。阿克爾稱它為“前Alpha版本”,所以有些SQL語句可能還無法在memcache中執行。阿克爾說,SELECT、 UPDATE、DELETE和INSERT語句都可以執行,而ORDER BY、REPLACE等一些語句還不能執行。
Memcache會不會成為MySQL的主流元件?阿克爾稱,“這取決於需求和使用。目前將memcache置於MySQL主線之外進行開發更加快捷。我相信有一天可以將它們合併在一起。”
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617542/viewspace-959428/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【DB寶35】使用MySQL 8.0 克隆(clone)外掛快速新增MGR節點MySql
- SOLIDWORKS批次轉格式外掛Solid
- 遊戲外掛教程(轉)遊戲
- Gulp的代理轉發外掛
- 【轉】jenkins外掛pipeline使用介紹Jenkins
- Cinemachine相機控制外掛(轉載)Mac
- IDEA久違了!FeignX外掛支援方法級別的導航跳轉Idea
- SemanticKernel:新增外掛
- Apache APISIX 玩轉 Tongsuo 國密外掛ApacheAPI
- PR語音轉字幕轉換外掛Speech to Text for Premiere Pro 2022REM
- Mettle Mantra for Mac(素材轉動畫AE外掛)Mac動畫
- MySQL外掛呼叫MySql
- [外掛擴充套件]轉向移動端ToMobile套件
- Zoom Transitions for Mac(平滑縮放轉場fcpx外掛)OOMMac
- zotero新增markdown外掛(Mac版)Mac
- mybatis plus 新增分頁外掛MyBatis
- 在Flutter中使用Fluro外掛進行路由跳轉Flutter路由
- 【eslint 外掛開發】禁用 location 跳轉外部連結EsLint
- gitbook 入門教程之實用外掛(新增3個外掛)Git
- 支援30+種型別幻燈片 | 輪播圖 | 旋轉木馬的強大jQuery外掛型別jQuery
- 新增SSL類漏洞檢測外掛
- 給 Zsh 新增主題和外掛
- FCPX外掛TransDub for Mac(螢幕分離萬花筒轉場)Mac
- Color Convert ---- Sublime Text 3多種顏色轉換外掛
- zplane Elastique Pitch V2(實時音高轉換外掛)AST
- mysqls為node.js而編寫的sql語句生成外掛 crud for mysql.MySqlNode.js
- EOSIO MySQL 外掛 issue 1MySql
- EOSIO MySQL 外掛 issue 2MySql
- Mysql - 行轉列、列轉行MySql
- Python 外掛虛擬環境支援Python
- APISIX Ingress 如何支援自定義外掛API
- MySQL 轉dorisMySql
- Oracle 轉MySqlOracleMySql
- GaussDB: db2->gaussdb 函式轉換DB2函式
- Linux磁碟掛載 轉Linux
- 將外掛類路徑轉為型別,並建立例項。型別
- Python開發Brup外掛檢測SSRF漏洞和URL跳轉Python
- 為NEO-GUI 新增外掛系統GUI
- apisix-dashboard上新增自定義外掛API