跳转到内容

MariaDB/简介

来自维基教科书,开放世界中的开放书籍

什么是 MariaDB?

[编辑 | 编辑源代码]

MariaDB 是 MySQL 的一个分支。MySQL 是世界上最受欢迎的 RDBMS;有关其历史的信息,请参阅官方文档或 MySQL 维基教科书

2008 年,Sun Microsystems 收购了 MySQL。收购后,开发流程发生了变化。该团队开始减少发布新 MySQL 版本的频率,因此新代码的测试更少。来自社区的贡献也减少了。

2009 年,MySQL 的创始人 Monty Widenius 离开了公司,创建了一家名为 The Monty Program 的新公司。他开始了一个名为 MariaDB 的新分支。

当 Oracle 宣布收购 Sun Microsystems(以及 MySQL 软件)时,大多数 MySQL 开发人员离开了 Sun,加入了其分支:MariaDB 和 Drizzle。

MariaDB 的范围是

  • 导入将添加到主 MySQL 分支的所有新代码,但对其进行增强以使其更稳定;
  • 清理 MySQL 代码;
  • 添加来自社区的贡献(新插件,新功能);
  • 开发 Maria 存储引擎;
  • 向服务器添加新功能。

许多代码改进是由第三方编写的。Monty Programs 希望保持开放的开发流程。它的资源无法与其他大公司竞争,但它受益于社区的工作。大多数改进是从 Percona 的补丁中导入的,这些补丁包含在 OurDelta MySQL 构建中。

Percona 还为一些 GNU/Linux 发行版提供软件包。

MariaDB 和 MySQL 之间的区别

[编辑 | 编辑源代码]

本节尝试列出 MariaDB 最重要的独特功能。

存储引擎

[编辑 | 编辑源代码]

以下存储引擎默认包含在 MariaDB 中,而不在 MySQL 中

  • XtraDB - InnoDB 的完全兼容分支,由 Percona 维护
  • Aria - 更现代的 MyISAM,也用于内部表
  • TokuDB - 具有创新缓冲区和高压缩的交易引擎
  • Mroonga - 支持中文、日文和韩文的全文搜索
  • SPIDER - 将表分片到多个服务器
  • OQGRAPH - 用于实现树结构
  • Sequence - 返回一组数字作为结果集
  • CONNECT - 支持多个外部数据源(数据文件、DBMS 等)
  • CassandraSE - 连接到 Apache Cassandra 的桥梁
  • SphinxSE - 连接到 Sphinx 的桥梁
  • FederatedX - Federated 的更丰富的分支

过时的存储引擎

  • PBXT - 一个交易引擎,旨在“介于 InnoDB 和 MyISAM 之间”

将来可能会添加其他引擎。

为什么选择 MariaDB?

[编辑 | 编辑源代码]
  • 自由软件 - 以 GPL 版本 2 许可证发布(从 MySQL 继承而来)
  • 成本 - 免费!
  • 支持 - MySQL 有在线教程、论坛、邮件列表 (lists.mysql.com)、付费支持合同;预计将出现更多特定于 MariaDB 的网站/服务。
  • 开放 - 欢迎来自社区的贡献和建议。
  • 速度 - 可用最快的数据库之一;可能比 MySQL 更快。
  • 功能 - 支持所有 MySQL 功能,以及社区开发的其他功能。
  • 易用性 - 语法灵活,管理数据库非常简单。
  • 可移植性 - 轻松从 CSV 和 XML 导入/导出。
  • 可扩展性 - 适用于包含数十亿条记录和数 TB 数据的数十万个表的小型数据库和大型数据库。
  • 插件 - 一些存储引擎和其他插件预装在 MariaDB 中(而不在 MySQL 中);您可以获得对其的支持。

官方网站和文档。

过时文档

[编辑 | 编辑源代码]

一些 MariaDB 开发人员的博客以及关于 MariaDB 的博客。

用户组和其他人员。

华夏公益教科书