mariadb與mysql的差別有:1、mysql是一個關係型資料庫管理系統,而MariaDB是MySQL的一個分支;2、MariaDB是由MySQL之父開發的,其目的是完全相容於MySQL ;3、XtraDB代替MySQL的InnoDB等。
本文操作環境:Windows7系統、Mysql5.7.14版、Dell G3電腦。
mariadb與mysql的差別有哪些?
淺談MySQL和MariaDB區別(mariadb和mysql的效能比較)
mysql簡介:
MySQL是一個關係型資料庫管理系統,由瑞典MySQL AB 公司開發,屬於 Oracle 旗下產品。 MySQL 是最受歡迎的關聯式資料庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關聯式資料庫管理系統) 應用軟體之一。
MySQL是一種關聯式資料庫管理系統,關聯式資料庫將資料保存在不同的表中,而不是將所有資料放在一個大倉庫內,這樣就增加了速度並提高了靈活性。
MySQL所使用的 SQL 語言是用於存取資料庫的最常用標準化語言。 MySQL 軟體採用了雙授權政策,分為社群版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放原始碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站資料庫。
MariaDB介紹:
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到底是什麼呢?
MariaDB資料庫管理系統是MySQL的一個分支。是由MySQL之父Michael開發的。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社群採用分支的方式來避開這個風險
##那麼兩者之間的效能誰好誰差呢,我們現在就在同一台電腦上簡單的測試下
我的筆記本環境是cpu :I3硬碟:普通機械硬碟(5400轉)記憶體:8G系統:win10 64位元MYSQL版本:5.6mariaDB版本:10.3以下分別在MYSQL 和mariaDB 建庫建表插入千萬級的測試資料ID為主鍵,資料庫引擎:MyISAM 查詢語句皆在Navicat下執行1.先查詢九百萬條後的20條資料就是下面這個語句select * from usertb limit 9000000,20#mysql 的處理時間是3.09秒 mariaDB的運行時間是1.89秒 2.查詢九百萬條後的20個數據根據ID倒序就是下面這個語句select * from usertb order by id desc limit 9000000,20MYSQL用時121.26秒 MariaDB用時75.73秒#
3.最後我們換條SQL語句來測試。用下面的SQL語句(MYSQL 常用的最佳化分頁的語句):
select * from usertb where id<(select id from usertb order by id desc limit 9000000,1) order by id desc limit 20
MYSQL 用時3.13秒
MariaDB卻花了70秒
為什麼呢?個人猜想也是不是MariaDB的子查詢沒有MYSQL的快?於是再次測試
將上面的語句拆分成兩個sql語句在MariaDB裡執行查詢如下:
select id from usertb order by id desc limit 9000000,1
得出ID是1000000
再查詢select * from usertb where id<1000000 order by id desc limit 20
#發現兩個SQL語句一起執行的時間也是3秒左右
#總結:兩個資料庫各有優勢找到自己合適的優化方式就好,咱是小白一個不會優化以上是無聊時的測試。
推薦學習:《mysql影片教學》
以上是mariadb與mysql的差別有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!