三个流行MySQL分支:Drizzle、MariaDB和Percona Server(包括XtraDB引擎)
XtraDB
XtraDB是一款独立的产品,但它仍被认为是MySQL的一个分支。XtraDB实际上是基于MySQL的数据库的一个存储引擎。XtraDB被认为是已成为MySQL一部分的标准MyISAM和InnoDB的一个额外存储引擎。
XtraDB分支有另一个目标,即成为InnoDB存储引擎的简单替代,这样用户就可以轻松地切换其存储引擎,无需更改任何现有的应用程序代码。XtraDB必须能够向后兼容InnoDB,以提供它们想要添加的所有新功能和改进。它们实现了此目标。
XtraDB的速度有多快?我找到的一个性能测试表明:与内置的MySQL 5.1 InnoDB 引擎相比,它每分钟可处理2.7倍的事务。(请参见参考资料)。速度显然是一个不可以忽略的因素,在考虑替代产品时更是如此。
Percona
与内置的MySQL存储引擎相比,XtraDB提供了一些极大的改进,但它不是一款独立产品,也无法轻松放入现有MySQL安装。因此,如果您想使用这款新引擎,则必须使用提供它的产品。采用Percona Server的一个很好的理由是,利用XtraDB引擎来尽可能地减少代码更改。
下面是Percona Server的声明,该声明来自它们自己的网站:
- 可扩展性:处理更多事务;在强大的服务器上进行扩展
- 性能:使用了XtraDB的Percona Server速度非常快
- 可靠性:避免损坏,提供崩溃安全(crash-safe)复制
- 管理:在线备份,在线表格导入/导出
- 诊断:高级分析和检测
- 灵活性:可变的页面大小,改进的缓冲池管理
Percona Server的一个缺点是他们自己管理代码,不接受外部开发人员的贡献,以这种方式确保他们对产品中所包含功能的控制。
MariaDB
另一款提供了XtraDB存储引擎的产品是MariaDB产品。它与Percona产品非常类似,但是提供了更多底层代码更改,试图提供比标准MySQL更多的性能改进
MariaDB提供了MySQL提供的标准存储引擎,即MyISAM和InnoDB。因此,实际上,可以将它视为MySQL的扩展集,它不仅提供MySQL提供的所有功能,还提供其他功能。MariaDB还声称自己是MySQL的替代,因此从MySQL切换到MariaDB时,无需更改任何基本代码即可安装它。
Drizzle
本文介绍的最后一款产品是Drizzle。与之前介绍的两款产品不同,Drizzle与MySQL有很大差别,甚至声称它们不是MySQL的替代产品。他们期望对MySQL进行一些重大更改,想要提供一种出色的解决方案来解决高可用性问题,即使这意味着要更改我们已经习惯了的MySQL的各个方面。
是不是所有人都应该使用Drizzle呢?等等,正如Drizzle反复指出的那样,它与MySQL不兼容。因此,如果您现在使用的是MySQL平台,那么需要重写大量代码,才能使Drizzle在您的环境中正常工作
尽管需要额外的工作才能让它运行,但它并不像Percona或MariaDB那样快速且易于使用。我之所以介绍Drizzle,是因为尽管目前它可能不是您的选择,但几年之后,它很可能会成为一些人的选择。因为本文的目标是提高您对未来使用的工具的认识,所以这是向您介绍此产品的好机会。许多领先的DB专家相信Drizzle将成为未来5年内高可用性数据库安装的选择。
分享到:
相关推荐
《高可用MySQL:构建健壮的数据中心》分为三个部分。第一部分讲述MySQL复制,包括高可用性和横向扩展,第二部分介绍构建健壮的数据中心时监控和性能方面的问题,第三部分给出其他MySQL相关内容,包括云计算和MySQL...
MySQL :: MySQL yog
《高可用MySQL:构建健壮的数据中心》分为三个部分。第一部分讲述MySQL复制,包括高可用性和横向扩展,第二部分介绍构建健壮的数据中心时监控和性能方面的问题,第三部分给出其他MySQL相关内容,包括云计算和MySQL...
《高可用MySQL:构建健壮的数据中心》分为三个部分。第一部分讲述MySQL复制,包括高可用性和横向扩展,第二部分介绍构建健壮的数据中心时监控和性能方面的问题,第三部分给出其他MySQL相关内容,包括云计算和MySQL...
支持的数据库:MS SQL Server、 PosgresSql、MySQL 数据库数据对比工具:可以针对两个数据进行表结构和数据的对比。1、结构对比:如开发库和正式库之间的结构和数据同步,此工具可以告诉您哪个表结构有字段的增加...
java连接mysql的稳定驱动
jsp+mysql:毕业设计动漫网站。内含项目代码,数据库脚本。
一、卸载原来的mysql: 卸载一: 输入: #rpm -qa | grep -i mysql 显示: mysql-libs-5.1.52-1.el6_0.1.i686 卸载方法: yum -y remove mysql-libs-5.1.52-1.el6_0.1.i686 卸载二: 输入: #rpm -qa | grep -i ...
Tornado-MySQL:用于Tornado的PyMySQL分支
高清 涂抹MySQL 跟着三思一步一步学MySQL
MySQL 版本号 高山: 3.7 MySQL的: mariaDB-10.1.28-r1 ...拉: docker pull quay.io/perriea/alpine-mysql:1.0 运行: docker run -d -p 3306:3306 --env-file .env quay.io/perriea/alpine-mysql:1.0
java连接mysql数据库的驱动,里边包含两个版本:5.1.47、8.0.28 也可从以下两个地址免费下载: 1. https://repo1.maven.org/maven2/mysql/mysql-connector-java/ 2. ...
biarms / mysql项目概述这是 Docker的Git存储库的分支。 有关如何使用此Docker映像的完整自述文件以及有关贡献和问题的信息,请参阅。 该fork的目标是构建兼容ARM(arm32v6,arm32v7,arm64v8)的映像,因为官方的...
使用命令行编译时:csc /r:MySql.Data.dll test.cs 下载地址: http://dev.mysql.com/downloads/connector/net/1.0.html 方法二: 通过ODBC访问MYSQL数据库 访问前要先下载两个组件:odbc.net和MYSQL的...
所需头文件: #include <mysql/mysql.h> 功能: 获得或初始化一个MYSQL结构 函数原型: MYSQL *mysql_init(MYSQL *mysql) 函数返回值: 一个被始化的MYSQL*句柄 ...函数传入值: MYSQL:类型的指针 函数返回值: 无
达梦数据库与mysql数据对比测试数据结果
mysql-connector-java-5.1.47用jdbc语言连接数据库的一种工具包
printf("%st%st%st%st%st%sn",mysql_row[0],mysql_row[1],mysql_row[2],mysql_row[3],mysql_row[4],mysql_row[5]); } } else { exit(-1); } mysql_free_result(mysql_ret); exit...
在Linux上安装MySQL: 1. 更新包管理器: bash Copy code sudo apt update 2. 安装MySQL服务器: bash Copy code sudo apt install mysql-server 3. 启动MySQL服务: bash Copy code sudo service mysql start 4. ...