一、MariaDB跟MySQL在绝大多数方面是兼容的,对于开发者来说,几乎感觉不到任何不同。是MySQL的代替品。
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,然后就可以像之前一样正常的运行。
MariaDB分支与最新的MySQL发布版本的分支保持一致性, 例如MariaDB 5.1.47对应MySQL 5.1.47,等等。
二、目前MariaDB是发展最快的MySQL分支版本,新版本发布速度已经超过了Oracle官方的MySQL版本。
三、支持MariaDB的客户端工具,如下:
DBEdit 一个免费的MariaDB数据库和其他数据库管理应用程序。
Navicat 一系列Windows、Mac OS X、Linux下专有数据库管理应用程序。
HeidiSQL 一个Windows上自由和开放源码的MySQL客户端。它支持MariaDB的5.2.7版本和以后的版本。 phpMyAdmin 一个基于网络的MySQL数据库管理应用程序。
四、
与 MySQL 相比较,MariaDB 更强的地方在于:
Maria 存储引擎
PBXT 存储引擎
XtraDB 存储引擎
FederatedX 存储引擎
更快的复制查询处理
线程池
更少的警告和bug
运行速度更快
更多的 Extensions (More index parts, new startup options etc)
更好的功能测试
数据表消除
慢查询日志的扩展统计
支持对 Unicode 的排序
相对于MySQL最新的版本5.6来说,在性能、功能、管理、NoSQL扩展方面,MariaDB包含了更丰富的特性。比如微秒的支持、线程池、子查询优化、组提交、进度报告等。详情见列表。
High Performance | Developers | DBAs | NoSQL |
Thread pool 线程池 | Microsecond precision & type 微秒支持 | Segmented MyISAM keycache MyISAM缓存分段 | HandleSocket 直接InnoDB/XtrDB访问 |
Group commit for the binary log binlog组提交 | SphinxSE for full-text search SphinxSE全文索引支持 | Authentication plugins - PAM, Active Directory 授权插件 | Dynamic columns 动态列 |
Non-blocking client library 非阻塞库 | Subqueries materialize 子查询优化 | LIMIT ROWS EXAMINED LIMIT行检查限制 | |
GIS functionality 地理信息系统支持 | Progress reporting 进度报告 |
生活其实也很简单,喜欢的就去争取、得到的就珍惜、失去的就忘记。