MySQL分支选择参考:Percona还是MariaDB

 更新时间:2015年03月19日 09:14:07   投稿:junjie  
这篇文章主要介绍了MySQL分支选择参考:Percona还是MariaDB,本文分别讲解了Percona、MariaDB背景知识,对使用它们的选择给出了参考,需要的朋友可以参考下

在MySQL被Oracle收购以后,越来越多的人对于MySQL的前景表示了担忧,对于开源的MySQL,或多或少对于Oracle自家的数据库产品产生冲击,这个开源免费的MySQL 对于Oracle更多的是包袱而不是资产。比如淘宝就从Oracle转成了MySQL,一些大型互联网公司也在推行去IOE(I:IBM,O:Oracle,E:EMC),甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

Percona

在介绍 Percona 之前,首要要介绍的是XtraDB存储引擎,在MYSQL中接触比较多的是MyISAM和InnoDB这两个存储引擎,先前的文章:《MySQL MyISAM和InnoDB的区别》也进行了详细的介绍。

MySQL 4和5使用默认的MyISAM存储引擎安装每个表。从5.5开始,MySQL已将默认存储引擎从MyISAM更改为InnoDB。MyISAM没有提供事务支持,而InnoDB提供了事务支持。与MyISAM相比,InnoDB提供了许多细微的性能改进,并且在处理潜在的数据丢失时提供了更高的可靠性和安全性。

Percona XtraDB 是 InnoDB 存储引擎的增强版,被设计用来更好的使用更新计算机硬件系统的性能,同时还包含有一些在高性能环境下的新特性。XtraDB 存储引擎是完全的向下兼容,在 MariaDB 中,XtraDB 存储引擎被标识为”ENGINE=InnoDB”,这个与 InnoDB 是一样的,所以你可以直接用XtraDB 替换掉 InnoDB 而不会产生任何问题。Percona XtraDB 包含有所有 InnoDB's 健壮性,可依赖的 ACID 兼容设计和高级 MVCC 架构。XtraDB 在 InnoDB 的坚实基础上构建,使 XtraDB 具有更多的特性,更好调用,更多的参数指标和更多的扩展。从实践的角度来看,XtraDB 被设计用来在多核心的条件下更有效的使用内存和更加方便,更加可用。新的特性被用来降低 InnoDB 的局限性。性能层面,XtraDB与内置的MySQL 5.1 InnoDB 引擎相比,它每分钟可处理2.7倍的事务。

Percona Server由领先的MySQL咨询公司Percona发布。Percona Server是一款独立的数据库产品,其可以完全与MySQL兼容,可以在不更改代码的情况了下将存储引擎更换成XtraDB 。

Percona团队的最终声明是“Percona Server是由Oracle发布的最接近官方MySQL Enterprise发行版的版本”,因此与其他更改了大量基本核心MySQL代码的分支有所区别。Percona Server的一个缺点是他们自己管理代码,不接受外部开发人员的贡献,以这种方式确保他们对产品中所包含功能的控制。

官网地址:http://www.percona.com/

MariaDB

MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自麦克尔·维德纽斯的女儿玛丽亚(英语:Maria)的名字。

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,10.0.9版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB。

版本方面,MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL 5.5中了解到MariaDB的所有功能。从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。

相对于最新的MySQL5.6,MariaDB在性能、功能、管理、NoSQL扩展方面包含了更丰富的特性。比如微秒的支持、线程池、子查询优化、组提交、进度报告等。
官网地址:https://mariadb.org/

Percona OR MariaDB

选择是已经痛苦的事情,对于上面的两个数据库,就是大公司也存在分歧,就像淘宝目前使用的是Percona 5.5.18,而Google\Wikipedia则站在了MariaDB这边。具体哪一个会走的更远,我们就拭目以待吧。

相关文章

  • Mysql/MariaDB启动时处于进度条状态导致启动失败的原因及解决办法

    Mysql/MariaDB启动时处于进度条状态导致启动失败的原因及解决办法

    本文给大家介绍Mysql/MariaDB启动时一直处于进度条状态,进度条结束后提示error。究竟是什么原因呢?该怎么解决呢?跟着小编一起看看该如何解决此问题呢。
    2015-09-09
  • CentOS6.7系统中编译安装MariaDB数据库

    CentOS6.7系统中编译安装MariaDB数据库

    本文主要是给大家详细讲述了如何在CentOS6.7系统中编译安装MariaDB数据库,有需要的小伙伴可以参考下
    2016-11-11
  • centos 7下安装mysql(MariaDB)的教程

    centos 7下安装mysql(MariaDB)的教程

    这篇文章主要为大家详细介绍了centos 7下安装mysql(MariaDB)的详细教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • MariaDB配置双主复制方案

    MariaDB配置双主复制方案

    MySQL复制中较常见的复制架构有“一主一从”、“一主多从”、“双主”、“多级复制”和“多主环形机构”等,今天我们来详细探讨下MariaDB配置双主复制的方案
    2017-03-03
  • mariadb 在低配 VPS 上崩溃问题处理方案

    mariadb 在低配 VPS 上崩溃问题处理方案

    本文给大家分享的是mariadb 在低配 VPS 上启动时崩溃问题的处理方案,附上解决过程,有需要的小伙伴可以参考下
    2016-09-09
  • MariaDB中的thread pool详细介绍和使用方法

    MariaDB中的thread pool详细介绍和使用方法

    这篇文章主要介绍了MariaDB中的thread pool详细介绍和使用方法,thread pool对高并发的环境是很好的一个解决方法,需要的朋友可以参考下
    2014-07-07
  • Mac中MariaDB数据库的安装步骤

    Mac中MariaDB数据库的安装步骤

    大家都知道MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。这篇文章我们将详细介绍在Mac中安装MariaDB数据库的步骤,有需要可以参考学习。
    2016-09-09
  • centos中找回MariaDB数据库root用户权限的方法

    centos中找回MariaDB数据库root用户权限的方法

    这篇文章主要介绍了centos中找回MariaDB数据库root用户权限的方法,本文写的很意思,相信大家会眼前一亮,需要的朋友可以参考下
    2014-07-07
  • CentOS安装和设置MariaDB的教程

    CentOS安装和设置MariaDB的教程

    这篇文章主要介绍了CentOS安装和设置MariaDB的教程的相关资料,需要的朋友可以参考下
    2015-09-09
  • MariaDB数据库的外键约束实例详解

    MariaDB数据库的外键约束实例详解

    约束保证了数据的完整性和一致性。下面这篇文章主要给大家介绍了关于MariaDB数据库的外键约束的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-09-09

最新评论