【MariaDB】浅谈 MariaDB 数据库

MariaDB简述

1、总述:
MariaDB是MySQL数据库的一个分支,使用方法几乎与MySQL完全一致,包括命令、界面、使用等,根据官方介绍,在MariaDB 5.5版本之前,所欲的功能特性完全继承自MySQL,因此使用MariaDB 5.5的人会从MySQL 5.5中了解到MariaDB的所有功能。

但是从2012年11月12日起发布的10.0.0版开始,MariaDB不再依照MySQL的版号,而是10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。

正因为是MySQL的一个分支和衍生版,因此各种特性与MySQL基本一致,所以用户在使用MariaDB时,几乎感觉不到其与MySQL的差异,这也是开发者开发MariaDB的初衷,那就是完全兼容并替代MySQL,包括API和命令行。

例如在集成平台XAMPP中,虽然数据库服务标为MySQL:
在这里插入图片描述
其实,真正的数据库服务不是MySQL,而是早已换成了MariaDB:
在这里插入图片描述
下面我们说一下为什么会出现MariaDB。

2、来源:
创建MariaDB数据库服务的原因之一,是因为MySQL的创始人Michael Widenius早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,之后SUN又被甲骨文公司(Oracle)收购,MySQL的所有权也落入Oracle的手中。

被甲骨文公司收购后,MySQL的开发者担心甲骨文公司会有将MySQL闭源的风险,所以创建了MySQL的一个分支,也就是免费开源的MariaDB数据库服务,完全兼容MySQL。MariaDB名称来自Michael Widenius的女儿Maria的名字。

虽然是分支,但是MariaDB在某些方面的性能强于MySQL,例如在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL。

当MariaDB被开发后,大型互联网用户以及Linux发行商纷纷抛弃MySQL,转投MariaDB阵营,MariaDB是目前最受关注的MySQL数据库衍生版,也被视为开源数据库MySQL的替代品。

MariaDB与MySQL

既然MariaDB来自MySQL且几乎是复制产品,那么他们的关系不可不说。

1、兼容
MariaDB是MySQL的衍生数据库且完全兼容MySQL,而且从MySQL迁移到MariaDB也是非常简单的,具体体现在以下几个方面:

  1. 数据和表定义文件(.frm)是二进制兼容的
  2. 所有客户端API、协议和结构都是完全一致的
  3. 所有文件名、二进制、路径、端口等都是一致的
  4. 所有的MySQL连接器,比如PHP、Perl、Python、Java、.NET、MyODBC、Ruby以及MySQL C connector等在MariaDB中都保持不变
  5. mysql-client包在MariaDB服务器中也能够正常运行
  6. 共享的客户端库与MySQL也是二进制兼容的

也就是说,在大多数情况下,你完全可以卸载MySQL然后安装MariaDB,然后就可以像之前一样正常的运行。

2、优势
之前说,MariaDB虽然被视为MySQL数据库的替代品,但它在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL,与 MySQL 相比较,MariaDB 更强的地方在于:

  1. 更优秀的存储引擎
    (Aria 存储引擎、PBXT 存储引擎、XtraDB 存储引擎、 FederatedX 存储引擎)
  2. 更快的复制查询处理
  3. 线程池
  4. 更少的警告和bug
  5. 运行速度更快
  6. 更多的 Extensions (More index parts, new startup options etc)
  7. 更好的功能测试
  8. 数据表消除
  9. 慢查询日志的扩展统计
  10. 支持对 Unicode 的排序

相对于MySQL最新的版本5.6来说,在性能、功能、管理、NoSQL扩展方面,MariaDB包含了更丰富的特性。比如微秒的支持、线程池、子查询优化、组提交、进度报告等。
——详见下图 (截图自百度百科)
截图自百度百科
3、引擎
MariaDB与MySQL使用的存储引擎是不一样的,准确说默认引擎是不一样的。

  • MySQL的默认引擎是MyISAMInnoDB
    (MyISAM:MySQL 5.0 之前的默认数据库引擎,最为常用。拥有较高的插入,查询速度,但不支持事务)
    (InnoDB:事务型数据库的首选引擎,支持ACID事务,支持行级锁定, MySQL 5.5 起成为默认数据库引擎)
  • MariaDB的默认引擎是XtraDBAria
    (XtraDB:替换 InnoDB,是 Percona 开发维护的 InnoDB 威力加强版,整合Google、Facebook 等公司和 MySQL 社区的补丁)
    (Aria:原名Maria,是基于事物的引擎,替代MyISAM)

使用 show engines; 查看数据库引擎。

查看MariaDB的存储引擎:

MariaDB [mysql]> sho
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值