Centos7
Centos7 版本將MySQL數據庫軟件從默認的程序列表中移除,用MariaDB代替了,MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL授權許可。
開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社區採用分支的方式來避開這個風險。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕鬆成爲MySQL的代替品。
那是不是代表着我們就不能用Mysql了呢?
答:不是
MySql
介紹
MySQL是一個關係型數據庫管理系統,由瑞典MySQL AB 公司開發,屬於 Oracle 旗下產品。MySQL 是最流行的關係型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關係數據庫管理系統) 應用軟件之一。
MySQL是一種關係型數據庫管理系統,關係數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。
MySQL所使用的 SQL 語言是用於訪問數據庫的最常用標準化語言。MySQL 軟件採用了雙授權政策,分爲社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作爲網站數據庫。
優點:
-
它使用的核心線程是完全多線程,支持多處理器。
-
有多種列類型:1、2、3、4、和8字節長度自有符號/無符號整數、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、 TIMESTAMP、YEAR、和ENUM類型。
-
它通過一個高度優化的類庫實現SQL函數庫並像他們能達到的一樣快速,通常在查詢初始化後不該有任何內存分配。沒有內存漏洞。
-
全面支持SQL的GROUP BY和ORDER BY子句,支持聚合函數(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。你可以在同一查詢中混來自不同數據庫的表。
-
支持ANSI SQL的LEFT 0UTER JOIN和ODBC。
-
所有列都有缺省值。你可以用INSERT插入一個表列的子集,那些沒用明確給定值的列設置爲他們的決省值。
-
mysql可以工作在不同的平臺上。支持C、C++、Java、Perl、PHP、Python和TCL API。
缺點
-
mysql最大的缺點是其安全系統,主要是複雜而非標準,另外只有到調用mysqladmin來重讀用戶權限時才發生改變。
-
mysql的另一個主要的缺陷之一是缺乏標準的RI(Referential Integrity-RI)機制;Rl限制的缺乏(在給定字段域上的一種固定的範圍限制)可以通過大量的數據類型來補償。
-
mysql沒有一種存儲過程(Stored Procedure)語言,這是對習慣於企業級數據庫的程序員的最大限制。
-
mysql不支持熱備份。
-
mysql的價格隨平臺和安裝方式變化。
MariaDB
介紹
MariaDB數據庫管理系統是MySQL的一個分支(這裏一定要注意,分支分支),主要由開源社區在維護,採用GPL授權許可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕鬆成爲MySQL的代替品。在存儲引擎方面,使用XtraDB來代替MySQL的InnoDB。 MariaDB由MySQL的創始人Michael Widenius主導開發,
他早前曾以10億美元的價格,將自己創建的公司MySQL AB賣給了SUN,此後,隨着SUN被甲骨文收購,MySQL的所有權也落入Oracle的手中。MariaDB名稱來自Michael Widenius的女兒Maria的名字。
MariaDB基於事務的Maria存儲引擎,替換了MySQL的MyISAM存儲引擎,它使用了Percona的 XtraDB,InnoDB的變體,分支的開發者希望提供訪問即將到來的MySQL 5.4 InnoDB性能。這個版本還包括了 PrimeBase XT (PBXT) 和 FederatedX存儲引擎。
Mysql 和 MariaDB 的區別:
與 MySQL 相比較,MariaDB 更強的地方在於:
-
Maria 存儲引擎
-
PBXT 存儲引擎
-
XtraDB 存儲引擎
-
FederatedX 存儲引擎
-
更快的複製查詢處理
-
線程池
-
更少的警告和bug (這個我喜歡)
-
運行速度更快
-
更多的 Extensions (More index parts, new startup options etc)
-
更好的功能測試
-
數據表消除
-
慢查詢日誌的擴展統計
-
支持對 Unicode 的排序
以上比較並不能代表 強弱,況且比較的意義也不是爭鋒好強
相對於MySQL來說,在性能、功能、管理、NoSQL擴展方面,MariaDB包含了更豐富的特性。比如微秒的支持、線程池、子查詢優化、組提交、進度報告等。詳情見列表。
由於Mysql太過於龐大後期再進行整理。