MySQL是一種開源的、關(guān)系型的數(shù)據(jù)庫管理系統(tǒng),廣泛用于Web應(yīng)用程序開發(fā)中。而MariaDB則是MySQL的一種分支,由于其社區(qū)開發(fā)的功能和改進(jìn),近年來在開源社區(qū)中逐漸流行。而MariaDB還有一個分支,叫做Mari。
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
以上代碼表示在MySQL或MariaDB中創(chuàng)建一個名為“users”的表格,其包含三個字段:id、username和password。id作為主鍵,自動遞增;username和password字段都不可為空,且數(shù)據(jù)類型為varchar(255)。這是創(chuàng)建表格最基本的語法。
而使用MariaDB作為數(shù)據(jù)庫的好處在于,其社區(qū)會更積極地推動新功能的開發(fā)和更新。例如,MariaDB 10.3版本中引入了一個新功能,叫做System Versioned Tables。這個功能允許開發(fā)者在表格上啟用時間旅行功能,讓表格記錄之前的版本,從而可以比較容易地進(jìn)行rollback操作。而MySQL中尚未有這個功能。
總的來說,MariaDB作為MySQL的一個分支,其繼承了MySQL的優(yōu)秀特性,同時又在MySQL存在不足的地方進(jìn)行改進(jìn),在開源社區(qū)中也有不少的支持者。在其他MySQL分支如Amazon Aurora等中,也有MariaDB的使用和支持,可以看出其對MySQL的實(shí)力和優(yōu)勢。