MySQL与MariaDB的主要区别是什么
MySQL和MariaDB是关系数据库管理系统(RDBMS),以其相互兼容性以及相同的命令和查询语法而闻名。
MariaDB是MySQL的一个免费开源分支,继承了该数据库的许多特性。
MariaDB和MySQL数据库管理系统有很多共同点,因此很难在需要决定数据库解决方案时进行选择。
但在我们深入分析MySQL与MariaDB之前,让我们从头开始。
MySQL和MariaDB简史
Michael“Monty”Widenius是MySQL原始版本的主要作者。MySQL这个名字来源于Monty的第一个女儿My。
相关:如何在Docker容器中运行MySQL:一个简单易用的指南
MySQL数据库由瑞典MySQL AB公司于1995年创建。太阳微系统公司后来在2008年以10亿美元的价格收购了MySQL AB。不久之后,太阳微系统公司于2010年被甲骨文公司收购。从那时起,MySQL一直由Oracle维护和管理。
当Oracle收购MySQL时,团队中的许多人都担心MySQL的未来。MySQL的主要作者不喜欢Oracle成为MySQL所有者的想法。
结果,创建了MariaDB,一个社区开发的MySQL数据库源代码的分支。最初的MySQL开发人员开始专注于MariaDB。
MariaDB延续了蒙蒂的传统,以他的第二个女儿玛丽亚的名字命名。
根据Monty自己的话,2014年4月在圣克拉拉举行的MySQL和MariaDB会议上,MariaDB的诞生是为了确保MySQL的免费版本始终存在。
现在我们已经提供了必要的背景信息,我们可以进入本文的主题:MySQL与MariaDB。
许可证型号
MariaDB在GPL(通用公共许可证)版本2下完全可用,其
满的
特征。
然而,没有商业许可证,而且由于法律原因永远不会有。
GPLv2声明您可以免费使用该软件,但除非您发布源代码,否则您不能修改和出售该软件。
MySQL最初是在GPL下运行的,但自从Oracle收购后,它就出现了不同的许可问题,
MySQL保持双重许可方式
.
因此,MySQL社区版是根据GPLv2授权的,但高级功能仅在MySQL企业版中可用,该版本是根据专有付费许可证授权的。
换句话说,MySQL的两个许可证之间的主要区别在于可用的功能和支持。
总之,虽然您在使用MariaDB时会收到功能齐全的包,但MySQL的情况并非如此。因此,如果我们在这里比较两者,MariaDB拥有其发布的GPL许可证所提供的明显优势。
人气
MySQL之一
最重要的
优势在于其长期的市场占有率。
此外,由于它是最古老的流行数据库解决方案之一,开发人员和数据库管理员可以使用广泛的社区资源来找到问题的答案并修复错误。
在撰写本文时,MySQL排名第二,而MariaDB则远远落后于第12位。
在这里,您可以根据数据库管理系统的流行程度找到数据库引擎的排名。
从上图可以看出,
MySQL显然是受欢迎的赢家。
MySQL与MariaDB:功能
MySQL和MariaDB有非常相似的通用选项,所以它们非常相似。然而,MariaDB在MySQL上添加了一些改进功能。
相关:MySQL:如何使用mysqldump备份(转储)和恢复数据库
存储引擎
除了标准的Archive、Blackhole、CSV、Federated、InnoDB、Memory、Merge和MyISAM存储引擎之外,
MariaDB包含12个MySQL中不存在的新引擎存储
.
- 咏叹调
- 卡桑德拉
- 连接
- MariaDB列存储
- Mroonga
- MyRocks
- QQ图表
- 序列
- SphinxSE
- 蜘蛛
- TokuDB
- XtraDB
MariaDB支持比MySQL更多的存储引擎。但是,请记住,这不是哪个数据库支持更多的存储引擎的问题,而是哪个数据库支持适合您需求的存储引擎。
复制
复制是一个使数据库管理员能够将记录从一个数据库复制到另一个数据库的过程。MySQL提供异步复制,这意味着它是一个单向过程。
另一方面,MariaDB允许主-从数据传输,并支持主-主复制。这为管理员提供了同时使用多个Master数据库的附加功能。
聚类
MySQL使用一种名为MySQL Cluster的专门集群技术。MySQL集群是MySQL社区/企业版的独立产品。它为MySQL提供了另一个存储引擎,通过一个密钥散列在多个主机上分发记录。
另一方面,MariaDB使用Galera集群为多主节点执行高级复制。它默认在MariaDB中构建,可以通过激活配置参数轻松启用。
因此,就特征而言,
MariaDB提供了与MySQL相同的功能,还有更多
.
MySQL与MariaDB:性能
MariaDB有几个优化,与MySQL相比,这些优化往往可以提高性能。
因此,MariaDB最显著的特点和最大的优势是其速度和性能。
在执行查询或复制时,MariaDB比MySQL更快。
此外,MariaDB在复制方面也优于MySQL。
MariaDB支持线程池,改善了并发连接和执行,特别是对于在线事务处理中简单但占用CPU的查询。此外,MariaDB的高级连接池可以更快地运行,支持超过200000个连接。
现在,MySQL确实具有线程池功能。但是,它仅在企业版中可用。这意味着免费使用的社区版本不包括线程池。
同样需要注意的是,使用MariaDB的内存存储引擎,INSERT语句的完成速度可以比MySQL快20%以上。
MariaDB通过只查询必要的表,对数据库视图进行了显著的优化。相反,当您在MySQL中查询视图时,会查询连接到该视图的所有表。
因此,如果您需要一个高性能的关系数据库解决方案,MariaDB是一个更好的选择。
支持
MySQL提供了其产品的企业版,其中包括免费的安全功能和全天候支持。在Oracle公司的支持下,MySQL是寻求稳定改进、一致更新和企业级支持的商业客户的绝佳选择。
MariaDB还提供顶级支持选项,全年提供全天候技术支持。此外,他们的工程师是MariaDB和MySQL的专家,如果你决定在这两个数据库之间切换,这会有很大帮助。
结论
这就把我们带到了本文的最后,重点介绍了MySQL和MariaDB数据库系统之间的一些核心区别。
Oracle的MySQL是一个备受尊敬的数据库管理系统,非常受欢迎。MariaDB拥有MySQL的许多功能,但它试图更进一步,添加MySQL所没有的各种功能。
我们的结论是,如果您的数据库解决方案需要高性能和各种连接器,那么MariaDB是您应该首选的解决方案。它可以通过更多的更新和开源功能提供更好的性能。
许多领先的IT公司,如谷歌、维基百科、维基媒体、RedHat、Ubuntu、Mozilla、SUSE和许多其他公司,都选择了MariaDB,这无疑是一个明确的迹象。
相关:MySQL Server的5个最佳免费替换
如果你感兴趣,可以在这里找到MySQL和MariaDB之间的完整差异列表。
如果你想把你的想法添加到MySQL与MariaDB的比较中,请在下面的评论部分写下你的建议。
延伸阅读:
Windows 记事本终于获得自动更正和拼写检查功能
在首次引入 Windows 大约 41 年后,记事本终于更新了自动更正和拼写检查功能。这家科技巨头于今年 3 月推出了拼...
Ubuntu 的 apt 和 apt-get 命令有什么区别?
在Ubuntu及其他基于Debian的Linux发行版中,软件包管理是系统维护的一个重要方面。apt和apt-get是两...
Ubuntu远程桌面:如何设置和连接
远程桌面是一种允许您远程接管和使用另一台计算机的服务。在Ubuntu中,可以在图形客户端机器上启用它来控制主机。此功能对...
苹果公司在“放开”iPad活动上宣布的4款产品(以及你错过了什么)
利用当天的视频 苹果2024年5月的“放开”活动标志着iPad系列的一个重要里程碑,该公司推出了自成立以来最重大的升级。...
将照片从iPhone传输到iPhone的8种快速方法
已升级到新iPhone,是否要从旧设备中移动所有照片?或者你只是想从别人的iPhone上转移照片?以下是在两部iPhon...