< 返回新闻公共列表

MariaDB和MySQL有什么区别?

发布时间:2022-07-07 14:31:00

MariaDB和MySQL有什么区别?在本文中,小编将和大家一起看看。


一、什么是MariaDB?

MariaDB是MySQL关系数据库管理系统 (RDBMS) 的开源分支。由于担心甲骨文收购MySQL,2009 年开发人员(包括一些最初从事 MySQL 工作的开发人员)创建了分支。作为MySQL的一个分支,MariaDB与前者非常兼容。

它支持与MySQL相同的功能,但还具有其他功能,我们将在下面看到。一些最重要的特性是新的存储引擎、JSON API 支持和并行数据复制。


二、什么是 MySQL?

MySQL是一种 RDBMS,可让您将数据存储在表中并对其进行操作。它由 Michael Widenius于1996年首次发布,他现在是MariaDB的首席开发人员。

MySQL是世界上最流行的 RDBMS,并被一些最大的科技公司和平台使用。这包括 Facebook、YouTube 和Twitter。

可以在WordPress站点中找到有关MySQL流行程度的更具体示例。数据库系统允许用户存储博客文章、用户和插件信息。


MariaDB和MySQL有什么区别?.png


三、MariaDB和MySQL的区别

1、性能比较

与 MySQL相比,MariaDB 几项优化往往会提高性能。一般来说,当谈到 MySQL 与 MariaDB的性能时,后者显然更好。

2、数据库视图

关于数据库“视图”有一个巨大的性能优化。“视图”本质上是虚拟数据库表,可以像数据库的常规表一样进行查询。

在MySQL中,当您查询视图时,将查询连接到该视图的所有表,而不管查询可能不需要其中一些表。这已在MariaDB中进行了优化,其中查询仅针对那些需要的表。

3、列存储

MariaDB以“ColumnStore”的形式提供了另一个强大的性能改进,它是一种分布式数据架构,可以极大地扩展 MariaDB。它可以线性扩展以跨数据库集群中的各种服务器存储数 PB 的数据。

4、更好的闪存存储性能

MariaDB 还提供了一个 MyRocks 存储引擎,可以将 RocksDB 数据库添加到其中。RocksDB 是一种数据库,旨在通过提供更高级别的数据压缩来提高闪存存储的性能。

5、分段密钥缓存

MariaDB 以 Segmented Key Cache 的形式引入了另一项性能改进。在典型的缓存中,不同的线程竞争对缓存条目进行锁定。这些锁称为互斥锁。当多个线程竞争一个互斥锁时,只有其中一个能够获得它,而其他线程必须等待锁被释放才能执行操作。这会导致这些线程中的执行延迟,从而降低数据库性能。

在分段键缓存的情况下,线程不需要锁定整个页面,但它可以只锁定页面所属的特定段。这有助于多个线程并行工作,从而提高应用程序的并行性,从而提高数据库的性能。

6、虚拟列

MariaDB 另一个有趣的特性是它支持虚拟列。这些列能够在数据库级别执行计算。这在许多应用程序访问同一列时非常有用,因此无需在每个应用程序中编写计算。此功能在 MySQL 中不可用。

7、并行执行查询

MariaDB v10.0 及更高版本允许并行执行多个查询。这个想法是来自主服务器的一些查询可以在从服务器中复制,因此可以并行执行。这种查询执行的并行性无疑为 MariaDB 提供了优于 MySQL 的优势。

8、线程池

MariaDB 还引入了一个名为“线程池”的新概念。以前,当需要到数据库的多个连接时,对于每个连接,都会打开一个线程,从而形成基于“每个连接一个线程”的架构。

使用“线程池”,新连接可以获取并查询数据库的开放线程池。这样,不需要为每个新的连接请求打开一个新线程,从而导致更快的查询结果。此功能在 MySQL 的企业版中可用,但在社区版中不可用。

9、存储引擎

MariaDB 提供了几个开箱即用的强大存储引擎,这些引擎在 MySQL 中不可用。例如,XtraDB、Aria 等。要为 MySQL 设置这些存储引擎,您需要手动安装它们,这可能不是最方便的过程。

10、兼容性

MariaDB 团队正在确保 MariaDB 可以在现有应用程序中无缝替换 MySQL。事实上,对于每个版本的 MySQL,他们发布相同的 MariaDB 版本号,表示 MariaDB 普遍兼容对应的 MySQL 版本。这开启了无缝切换到 MariaDB 的可能性,而无需对应用程序代码库进行任何修改。

11、开源与专有数据库

MySQL是一个大型项目,由世界上最大的组织之一——甲骨文管理。这有其优点和缺点。好处是,这可能意味着更好的安全性、软件稳定性和量身定制的客户支持体验。然而,一个显着的缺点是在大型组织中发布新功能需要花费大量时间。

另一方面,MariaDB是完全开源的,他们在接受外部贡献并将其作为新功能和增强功能发布方面非常快。


总结:根据MariaDB和MySQL的区别,两者都各自优缺点,都有理由选择其中之一,因此小编建议大家根据自己需求进行选择。



/template/Home/Zkeys724/PC/Static