mariadb与mysql的区别是什么

79次阅读
没有评论

共计 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 小编将为大家推送更多相关知识点的文章,欢迎关注!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-18发表,共计2333字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)