【MariaDB】MariaDB vs MySQL - 特性
原文链接: https://mariadb.com/kb/en/mariadb-vs-mysql-features/
xiaomo译------
支持更多的存储引擎
除了标配的MyISAM, BLACKHOLE, CSV, MEMORY, and ARCHIVE 等, 以下的存储引擎也包含在MariaDB源及二进制包中:
- Aria
- XtraDB (可用于替代InnoDB)
- PBXT (包含于MariaDB 5.1, MariaDB 5.2及MariaDB 5.3. 在 MariaDB 5.5中被禁用)
- FederatedX (可用于替代Federated)
- OQGRAPH (包含于MariaDB 5.1, MariaDB 5.2及MariaDB 5.3. 在MariaDB 5.5被禁用) — 新增于5.2版本
- SphinxSE — 新增于5.2版本
- IBMDB2I. Oracle把它从MySQL 5.1.55中移除, 但我们在MariaDB中一直保留到了5.5版本.
- MariaDB-10.0中的Cassandra
- 我们正致力于增加其他no-sql型存储引擎到MariaDB中.
速度的提升
- MariaDB 5.3增加了很多优化及增强功能. 子查询现在终于可用了!完整的列表和与MySQL的一个对比情况可以参考这里. 你可以在这里找到基准信息.
- 更快更安全的复制: Group commit for the binary log. 这使得许多设置和更新的复制速度快了两倍以上.
- 在Windows系统上的Innodb的异步IO子系统性能有所改进.
- MEMORY(HEAP)引擎索引速度更快. 根据一个简单的测试结果显示, 在整型索引中进行INSERT操作比MySQL快24%左右,在CHAR(20)列上的INSERT操作则要快60%.
- CHECKSUM TABLE运行更快.
- 我们改善了character set转换的性能 (同时在并不需要转换时移除了该操作). 大体上速度可以提升1-5 % (根据sql-bench测试),但对于0x00-0x7f之间字符集合应该有更好的效果.
- Pool of Threads in MariaDB 5.1不错,在MariaDB 5.5中表现尤佳. 你可以在运行MariaDB时使用超过200,000的连接数,同时在大量连接下体现了显著的速度提升.
- DBUG功能也有了几处性能优化,使得在编译调试但不使用调试时有更快的执行速度.
- Aria存储引擎的使用使得复杂查询执行更快(一般查询操作使用了disk-based的临时表). Aria一般应用于内部临时表, 可以让复杂的查询提高执行速度. 相对于MyISAM,Aria能更快的访问临时表,这归功于Aria将行数据缓存到了内存中而通常情况下不需要将临时行写入磁盘.
- 拓展了测试套件。现在即使要测试更多内容,速度也要比之前快.
拓展 & 新特性
我们在MariaDB中新增了许多新特性. 如果一个补丁或功能有效,安全并稳定,我们会努力把它添加到MariaDB. 最显著的新特性如下:
- Microseconds in MariaDB — 新增于5.3
- Microsecond Precision in Processlist
- Table Elimination
- Virtual Columns — 新增于5.2
- Extended User Statistics — 新增于5.2
- Segmented Key Cache — 新增于5.2
- KILL all queries for a user — 新增于5.3
- Pluggable Authentication — 新增于5.2
- Storage-engine-specific CREATE TABLE — 新增于5.2
- Enhancements to INFORMATION SCHEMA.PLUGINS table — 新增于5.2
- Group commit for the binary log. 这显著的加快了复制速度 — 新增于5.3
- 增加
mysqlbinlog选项以更改正在使用数据库 — 新增于5.2--rewrite-db ALTER TABLE和LOAD DATA INFILE操作的Progress reporting. — 新增于5.3- 更快的joins and subqueries. — 新增于5.3
- HandlerSocket及更快的HANDLER调用. — 新增于5.3
- 支持Dynamic Columns. — 新增于5.3
- GIS Functionality — 新增于5.3
- Multi-source replication. — 新增于10.0
- SHOW EXPLAIN 获取另一线程中正在执行查询操作的EXPLAIN计划. — 新增于10.0
可以参考features for each release,以获取更详细的特性列表。
表现更好的测试
- 测试套件中有更过的测试用例.
- 测试潜在的bug的修复.
- 通过不同的配置选项构建测试,以获得更好的测试特性.
- 移除无效的测试. (e.g. 如果在测试中某功能点没有被构建,那么它将不会被用于测试.)
更少的警告和错误
- Bugs不是什么好东西. 尽可能的修复bugs并尽少的引发新的问题.
- 编译警告也不是什么好事. 已尽可能的限制编译警告.
真正的开源
- MariaDB代码的发布遵守GPL, LPGL或BSD协议. MariaDB并没有类似MySQL企业版那样的闭源模块. 实际上,MySQL 5.5企业版中的闭源模块代码可以在MariaDB开源版本中找到.
- MariaDB包含所有已被修复的bug的测试用例. 而Oracle并不会提供MySQL5.5新修复的bug的测试用例.
- 所有的bugs和development plans都是公开的.
- 秉承真正开源的精神理念,MariaDB由社区持续开发维护.
相关链接
参考Compatiblity between MariaDB and MySQL
- 顶
- 1
- 踩
- 0
【MariaDB】MariaDB vs MySQL - 特性的更多相关文章
- CentOS安装mariadb做为mysql的替代品
mariadb做为mysql的替代品 现在centos的新版本yum包已换成mariadb 安装一些库 yum install gcc gcc-c++ wget net-tools 复制代码 查看SE ...
- Ubuntu 16.04 LAMP server tutorial with Apache 2.4, PHP 7 and MariaDB (instead of MySQL)
https://www.howtoforge.com/tutorial/install-apache-with-php-and-mysql-on-ubuntu-16-04-lamp/ This tut ...
- mysql错误日志/var/log/mariadb/mariadb.log,二进制日志
mariadb-日志 IT_luo关注0人评论65人阅读2018-10-15 08:59:03 mariadb日志 mariadb日志: 1.查询日志:query log: 2.慢查询日志:slo ...
- 在centos7中用mariadb代替了mysql数据库吗
从最新版本的linux系统开始(如 Centos7),默认的是 Mariadb而不是mysql!(mysql被闭源厂家收购,有闭源风险) 使用系统自带的repos安装很简单: yum install ...
- 从偶然的机会发现一个mysql特性到wooyun waf绕过题
从偶然的机会发现一个mysql特性到wooyun waf绕过题 MayIKissYou | 2015-06-19 12:00 最近在测试的时候,偶然的机会发现了一个mysql的特性, 为啥是偶然的机会 ...
- MySQL · 特性分析 · 优化器 MRR & BKA【转】
MySQL · 特性分析 · 优化器 MRR & BKA 上一篇文章咱们对 ICP 进行了一次全面的分析,本篇文章小编继续为大家分析优化器的另外两个选项: MRR & batched_ ...
- MariaDB MariaDB、MySQL存储过程、游标基础应用举例说明
MariaDB.MySQL存储过程.游标基础应用举例说明 by:授客 QQ:1033553122 测试环境: MariaDB-10.0.19-centos7-x86_64 实践操作: # 创建测试数据 ...
- mariadb是替代MySQL的好方式
像Oracle这样成熟稳定的数据库,足以支撑海量数据的存储与查询了?为什么还需要数据切片呢?的确,Oracle的DB确实很成熟很稳定,但是高昂的使用费用和高端的硬件支撑不是每一个公司能支付的起的.试想 ...
- MariaDB 服务器在 MySQL Workbench 备份数据的时候出错如何解决
服务器是运行在 MariaDB 10.2 上面的,在使用 MySQL Workbench 出现错误: mysqldump: Couldn't execute 'SELECT COLUMN_NAME, ...
随机推荐
- unpe13e 学习备忘1
转其他地方. http://blog.sina.com.cn/s/blog_a43aba560101a2s5.html 运行书本中的程序.1,首先,下载源码:unpv13e.tar.gz2,然后,编 ...
- $P1596 [USACO10OCT]湖计数Lake Counting$
\(problem\) 其实这题吧\(DFS\)好写一点(大雾 所以就不讲\(DFS\)了 em \(BFS\)的话 主要是 判重. 方向. 队列.(没了吧 至于位置 用两个队列?还是\(pair\) ...
- ACM_夏天到了,又到了出游的季节
夏天到了,又到了出游的季节 Time Limit: 2000/1000ms (Java/Others) Problem Description: QWER最近无心打代码,于是带着n套衣服出去浪.但是每 ...
- 关于java.util.properties的随笔
public class Propertiesextends Hashtable<Object,Object> Properties 类表示了一个持久的属性集.Properties 可保存 ...
- iOS动画——UIKit动画
iOS动画 iOS有很多动画技术,API主要分布在两个库中,一个是UIKit,另一个是CoreAnimation,先对UIKit动画做一下总结. UIKit动画 在UIKit中,很多API都可以看到a ...
- [laravel]用户异地登录后踢掉之前的登录
不同用户和服务器之间由一个唯一的session来区分,但是一般情况下不同的session对应的用户model可以是同一个. 为了实现只能同时在一个地方登陆,可以在用户的字段里增加一个last_sess ...
- 【PL/SQL】用星号拼出金字塔
代码中首先声明了几个变量,然后使用嵌套循环去输出空格和星号,其中: 每层空格数=总层数-该层层数 每层星号数=当前层数*2-1 代码如下: declare v_number1 ); --外层循环控制金 ...
- SQL基本操作——ALTER
ALTER TABLE 语句用于在已有的表中添加.修改或删除列. Persons 表: ID LastName FirstName Address City 1 Adams John Oxford S ...
- ProE复杂曲线方程:Python Matplotlib 版本代码(L系统,吸引子和分形)
对生长自动机的研究由来已久,并在计算机科学等众多学科中,使用元胞自动机的概念,用于生长模拟.而复杂花纹的生成,则可以通过重写一定的生长规则,使用生成式来模拟自然纹理.当然,很多纹理是由人本身设计的,其 ...
- Java程序员2016年终总结
回顾2016年, 很庆幸,自己能在2016年年尾找到一份满意的web后台开发工作.这也是我学习编程以来第一份开发工作,我很是珍惜. 还记得大三接触了Java的JFrame编写的坦克大战之后,就对编程产 ...