
MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL后,有將MySQL閉源的潛在風險,因此社區采用分支的方式來避開這個風險。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。
MariaDB由MySQL的創始人麥克爾·維德紐斯主導開發,他早前曾以10億美元的價格,將自己創建的公司MySQL賣給了SUN,此后,隨著SUN被甲骨文收購,MySQL的所有權也落入Oracle的手中。
MariaDB名稱來自麥克爾·維德紐斯的女兒瑪麗亞(英語:Maria)的名字。
MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人會從MySQL5.5中了解到MariaDB的所有功能。從2012年11月12日起發布的10.0.0版開始,不再依照MySQL的版號。10.0.x版以5.5版為基礎,加上移植自MySQL 5.6版的功能和自行開發的新功能。
在存儲引擎方面,10.0.9版起使用XtraDB(名稱代號為Aria)來代替MySQL的InnoDB。
MariaDB的API和協議兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和進度報告。
這意味著,所有使用MySQL的連接器、程序庫和應用程序也將可以在MariaDB下工作。
在此基礎上,由于擔心甲骨文MySQL的一個更加封閉的軟件項目,Fedora的計劃在Fedora 19中的以MariaDB取代MySQL
MySQL和MariaDB都發布了各自的用戶名單。
使用MySQL的有Facebook、Github、YouTube、Twitter、PayPal、諾基亞、Spotify、Netflix等。
使用MariaDB的有Redhat、DBS、Suse、Ubuntu、1&1、Ingenico等。
有一些令人興奮的新功能(如窗口函數、角色控制或公共表表達式(CTE))可能值得一提,但本文只是為了比較兩個數據庫,所以我們在這里只討論其中一方專門提供的功能,以便更好地幫助讀者選擇合適自己的數據庫。
讓我們來看一下只有其中一個數據庫專門提供的功能:
從5.7版本開始,MySQL支持由RFC 7159定義的原生JSON數據類型,可以高效地訪問JSON文檔中的數據。
MariaDB沒有提供這一增強功能,認為JSON數據類型不是SQL標準的一部分。但為了支持從MySQL復制數據,MariaDB為JSON定義了一個別名,實際上就是一個LONGTEXT列。MariaDB聲稱兩者之間沒有顯著的性能差異,但他們并沒有提供基準測試數據來支持這個說法。
值得注意的是,MySQL和MariaDB都提供了一些JSON相關函數,用于更方便地訪問、解析和檢索JSON數據。
新聞熱點
疑難解答