共計 2333 個字符,預計需要花費 6 分鐘才能閱讀完成。
這篇文章主要講解了“mariadb 與 mysql 的區別是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“mariadb 與 mysql 的區別是什么”吧!
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.6
mariaDB 版本: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,20
MYSQL 用時 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 秒左右
感謝各位的閱讀,以上就是“mariadb 與 mysql 的區別是什么”的內容了,經過本文的學習后,相信大家對 mariadb 與 mysql 的區別是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!