MySQL MySQL和MariaDB区别
一、MySQL MySQL MariaDB 介绍
MariaDB 和 MySQL 都是关系数据库管理系统 (RDBMS) 的类型,它们是免费的开源软件。2009 年,MySQL 的创始人 Michael Monty Widenius 决定开发 MySQL 的一个分支,并将其命名为 MariaDB。MariaDB 为 MySQL 提供商业支持。
这两种 RDBMS 软件都用于将数据以表格形式存储在数据库中并各有好处,因此组织的更好选择取决于具体的要求和目标。让我们在以下基础上了解 MariaDB 和 MySQL 的本质区别:
下面我们来了解一下 MariaDB 和 MySQL 的区别:
1) 初始版本和稳定版本
MariaDB 最初于 2009 年 10 月 29 日发布。它的稳定版于 2020 年 5 月 12 日发布。相比之下,MySQL 最初于 1995 年 5 月 23 日发布。其稳定版于 2020 年 4 月 27 日发布。
2) 开发者
MariaDB 由 MariaDB Corporation AB 和 MariaDB 基金会开发。相比之下,MySQL 最初是由一家瑞典公司 MySQL AB 于 1994 年创立的。2008 年,Sun Microsystems 收购了 MySQL AB。后来,在 2010 年,Sun Microsystems 由 Oracle Corporation 领导。因此,Oracle 公司目前正在开发和维护 MySQL。
3) 使用的编程语言
MariaDB 是用 C、C++、Perl和Bash 编程语言编写的。相比之下,MySQL 是用C和 C++ 编程语言编写的。
4) 用户
MariaDB 的主要客户有 DBS、Red hat、Google、Ubuntu、Wikipedia、SuSE 等,而 MySQL 的主要用户有 YouTube、Twitter、Facebook、Netflix、NASA、Tesla 等。
5) 兼容性
MySQL 是一种开源RDBMS,它以表、触发器、视图或存储过程的形式存储数据。它使用不同的键,例如唯一键、主键、外键等来维护数据的完整性和冗余性。另一方面,MariaDB 是 MySQL 的扩展版本(fork),具有新的扩展功能,例如带参数的游标、INVISIBLE 列、NEW 语句等等。这些附加功能非常有助于我们用 MariaDB 替换 MySQL。它具有与 MySQL 相似的数据库结构和索引。因此,无需任何更改和修改即可将我们的应用程序从 MySQL 导入/导出到 MariaDB 是兼容的。
6) 版本
在 MySQL 中,5.1 和 5.5 之间存在版本差距。MySQL 的最新版本是 v5.8。同时,MariaDB 有 5.2、5.3 等连续版本。MariaDB 5.5 版具有MySQL5.5 版的所有功能。MariaDB 的最新版本是 v10.4。
7) 存储引擎
在 MySQL 中,包含 BLACKHOLE、MyISAM、MERGE、InnoDB、CSV 等存储引擎用于数据存储。另一方面,MariaDB 包括 12 个新的附加存储引擎,带有 MariaDB 源和二进制包。
8) 加密
MariaDB 提供对临时表加密和二进制日志加密的支持。另一方面,MySQL 不提供对临时表加密和二进制日志加密的支持。但是,当它们被配置为这样做时,它会加密撤消/重做日志。
9) 密码验证
MySQL 包含一个通过验证和测试密码来提高安全性的默认功能。而 MariaDB 不提供此类功能。
10) 性能
由于 MariaDB 包含更多的存储引擎,它提供了对数据的插入、更新和删除等不同操作的快速执行。MariaDB 的性能比 MySQL 快 4 倍。相比之下,MySQL 无法像 MariaDB 那样快速执行。
11) 主从复制
不同版本的 MariaDB 允许我们将数据从 MySQL 服务器复制到 MariaDB 服务器。相反,MySQL 版本不允许将数据从 MariaDB 服务器复制到它。MySQL 提供主从复制,而 MariaDB 提供数据的主从复制。
12) 云平台
MySQL 在 Google Cloud 平台上作为托管服务提供,在Amazon Web Services (AWS)、Rackspace Cloud 和 Microsoft Azure 上作为服务提供。另一方面,MariaDB 仅作为 Rackspace Cloud、Microsoft Azure和 AWS 上的服务提供。
13) 开源协议
MariaDB 仅包含一个 GPLv2 许可证(用于社区服务器)。而 MySQL 提供两种许可:GPLv2(用于社区服务器)和企业许可。
14) 语法
尽管MariaDB和MySQL之间存在许多差异,但两者的语法结构是相同的。
让我们看看如何:
从 STUDENT 表中选择所有记录:
MariaDB: SELECT * FROM STUDENT;
MySQL: SELECT * FROM STUDENT;
要从 STUDENT 表中删除记录:
MariaDB: DELETE FROM STUDENT <where condition>;
MySQL: DELETE FROM STUDENT <where condition>;
二、MariaDB 与 MySQL 区别
让我们以表格的形式总结上述差异。
参数 | MySQL | MariaDB |
---|---|---|
定义 | MySQL是由瑞典公司 MYSQL AB 构建的开源、跨平台的关系数据库管理系统。甲骨文公司目前正在开发和维护。 | MariaDB是 MySQL 数据库管理系统的一个分支,具有针对小型和企业任务的数据处理能力。分叉意味着保证 MySQL 代码库将永远免费。它是 MySQL 的改进和高级版本。 |
初始发行 | MySQL 的第一个版本是 1995 年 5 月。 | MariaDB 的第一个版本是 2009 年 10 月。 |
当前版本 | MySQL 的最新版本是 2020 年 4 月 27 日的 8.0.20。 | MariaDB 的最新版本是 2020 年 5 月 12 日的 10.4.13。 |
协议 | MySQL | MySQL 和 MariaDB |
源代码 | 开源和专有 | 开源 |
主从复制 | MySQL 版本不允许将数据从 MariaDB 服务器复制到它。MySQL 提供主从复制。 | 不同版本的 MariaDB 允许我们将数据从 MySQL 服务器复制到 MariaDB 服务器。MariaDB 提供数据的主-主和主从复制。 |
存储引擎 | MySQL的存储引擎有限: InnoDB MyISAM BLACKHOLE CSV MEMORY ARCHIVE MERGE |
MariaDB具有广泛的存储引擎: MyISAM BLACKHOLE CSV MEMORY ARCHIVE MERGE ColumnStore MyRocks Aria SphinxSE TokuDB CONNECT SEQUENCE Spider Cassandra |
检查约束 | MySQL没有检查约束。 | MariaDB提供对检查约束的支持。 |
速度 | MySQL MariaDB 相比,它的速度较慢。 | MariaDB提供更快的速度,因为它是 MySQL 的高级版本。 |
连接池 | MySQL 线程池每次可以支持少于 200,000 个连接。 | MariaDB 有一个高级线程池,可以提供更快的执行速度,并且每次可以支持超过 200,000 个连接。 |
发展 | 关闭 | 打开 |
文件维护 | Oracle Corporation 维护该文档。 | MariaDB 基金会和其他开发者也可以参与开发和维护。 |
路由 | MySQL有 MySQL 路由器。 | MariaDB有一个 MariaDB MaxScale。 |
数据屏蔽 | MySQL不允许数据屏蔽。 | MariaDB允许数据屏蔽。 |
图形用户界面 | MySQL提供 MySQL Workbench。 | MariaDB提供 SQLyog。 |
公司使用 | GitHub, US Navy, NASA, Tesla, Netflix, WeChat, Facebook, Twitter, YouTube, and Spotify | Google, Craigslist, Wikipedia, archlinux, Red Hat, CentOS, and Fedora |
三、MySQL的特点
MySQL数据库的基本特征如下:
- MySQL 是一个关系数据库管理系统,易于使用。我们只需使用几条简单的 SQL 语句就可以构建 MySQL 并与之交互。
- MySQL是安全的,因为密码在 MySQL 中是加密的。
- MySQL遵循客户端/服务器模型。
- MySQL是免费和开源的。
- MySQL易于扩展并提供高性能、高灵活性和高生产力。
- MySQL具有强大的事务支持,允许事务回滚、提交和崩溃恢复。
四、MariaDB的特点
MariaDB 数据库的基本特征如下:
- MariaDB是免费的、开源的,并在 GPL、LGPL 或 BSD 下获得许可。
- MariaDB提供向后兼容性。
- MariaDB基于 MySQL 社区版本。这是因为 MariaDB 是 MySQL 的改进版本。
- MariaDB提供了许多存储引擎,包括高性能存储引擎,用于与其他 RDBMS 数据源一起工作。
- MariaDB可以在各种操作系统上运行,并支持多种编程语言。
- MariaDB支持 PHP,这是一种流行的 Web 开发语言。
- MariaDB提供 Galera 集群技术。
热门文章
优秀文章