千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:郑州千锋IT培训  >  技术干货  >  CentOS 7为什么放弃了MySQL,改使用MariaDB?

CentOS 7为什么放弃了MySQL,改使用MariaDB?

来源:千锋教育
发布人:xqq
时间: 2023-10-21 02:46:21

一、CentOS 7放弃了MySQL,改使用MariaDB的原因

Oracle公司旗下收购了MySQL后,对MySQL做出了一些控制权变更和许可证条款上的改变,引起了MySQL社区的不满和担忧,MySQL的走向变得不稳定。 为了提供一个更加开放、自由的数据库选择,CentOS 7决定放弃MySQL,改用MariaDB。MariaDB是MySQL原创者Monty Widenius等人创建的一个分支,致力于成为一个更加开放而且免费的数据库系统。在MariaDB中,一些被认为过于复杂或冗余的功能得到了修复或删除,增强了性能和安全性,同时保持了与MySQL的高度兼容性。这使得它成为了一个很好的MySQL替代品,广受MySQL用户欢迎。也因此,很多Linux发行版选择采用MariaDB 作为其默认的数据库系统。

二、MySQL介绍

1、简介

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,属于Oracle旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是较好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一。MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都选择MySQL作为网站数据库。

2、应用环境

与其他的大型数据库例如 Oracle、DB2、SQL Server等相比,MySQL自有它的不足之处,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企业来说,MySQL提供的功能已经绰绰有余,而且由于MySQL是开放源码软件,因此可以大大降低总体拥有成本。

Linux作为操作系统,Apache或Nginx作为Web服务器,MySQL作为数据库,PHP/Perl/Python作为服务器端脚本解释器。由于这四个软件都是免费或开放源码软件(FLOSS),因此使用这种方式不用花一分钱(除开人工成本)就可以建立起一个稳定、免费的网站系统,被业界称为“LAMP”或“LNMP”组合。

3、系统特点

MySQL使用 C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby、.NET和 Tcl 等。支持多线程,充分利用 CPU 资源。优化的 SQL查询算法,有效地提高查询速度。既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。提供用于管理、检查、优化数据库操作的管理工具。支持大型的数据库,可以处理拥有上千万条记录的大型数据库。支持多种存储引擎。MySQL 是开源的,所以你不需要支付额外的费用。MySQL 使用标准的 SQL数据语言形式。MySQL 对 PHP 有很好的支持,PHP是比较流行的 Web 开发语言。MySQL是可以定制的,采用了 GPL协议,你可以修改源码来开发自己的 MySQL 系统。在线 DDL/更改功能,数据架构支持动态应用程序和开发人员灵活性。复制全局事务标识,可支持自我修复式集群。复制无崩溃从机,可提高可用性。

三、MariaDB介绍

1、简介

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体,分支的开发者希望提供访问即将到来的MySQL 5.4 InnoDB性能。这个版本还包括了 PrimeBase XT(PBXT)和 FederatedX存储引擎。

2、发展

成立于2009年,MySQL之父Michael “Monty” Widenius用他的新项目MariaDB完成了对MySQL的“反戈一击”。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。 过去一年中,大型互联网用户以及Linux发行商纷纷抛弃MySQL,转投MariaDB阵营。MariaDB是目前最受关注的MySQL数据库衍生版,也被视为开源数据库MySQL的替代品。

MariaDB虽然被视为MySQL数据库的替代品,但它在扩展功能、存储引擎以及一些新的功能改进方面都强过MySQL。而且从MySQL迁移到MariaDB也是非常简单的:

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

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

3、特点

MariaDB 是一个采用 Maria 存储引擎的MySQL分支版本,是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服务器。

这个项目的很多代码都改编于 MySQL 6.0,例如“pool of threads”功能提供解决多数据连接问题。MariaDB 5.1.41 RC可以到这里下载,32位和64位已编译Linux版本,还包括源代码包。MariaDB基于GPL 2.0发布。

与 MySQL 相比较,MariaDB 更强的地方在于:

Maria 存储引擎PBXT 存储引擎XtraDB 存储引擎FederatedX 存储引擎更快的复制查询处理线程池更少的警告和bug运行速度更快更多的 Extensions (More index parts, new startup options etc)更好的功能测试数据表消除慢查询日志的扩展统计支持对 Unicode 的排序

4、第三方工具

MariaDB的API和协议兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和进度报告。这意味着,所有使用MySQL的连接器、库和应用程序也将会在MariaDB下工作。在此基础上,由于担心甲骨文MySQL的一个更加封闭的软件项目,Fedora的计划在Fedora 19中的以MariaDB取代MySQL,维基媒体基金会的服务器同样也使用MariaDB取代了MySQL。如下是支持MariaDB的客户端工具:

DBEdit:一个免费的MariaDB数据库和其他数据库管理应用程序Navicat:一系列Windows、Mac OS X、Linux下专有数据库管理应用程序。Navicat 15 for MySOL是目前业界流行的 MySQL 和 MariaDB 数据库的前端编辑工具,是视图可视化的利器,可轻松生成关于表之间的关系运算 SOL 命令。该软件通过对数据表的可视化连接操作,自动生成复杂的多表关系运算的 SOL 命令,并实时返回结果记录集HeidiSQL:一个Windows上自由和开放源码的MySQL客户端。它支持MariaDB的5.2.7版本和以后的版本phpMyAdmin:一个基于网络的MySQL数据库管理应用程序

延伸阅读1:MariaDB的目标

MariaDB的目标是提供一个由社区开发的、稳定的、总是免费的MySQL分支,在用户级别上兼容主流版本。我们为自己的版本和上游、社区版的互操作性提高而努力。MariaDB分支与最新的MySQL发布版本的分支保持一致性,例如MariaDB 5.1.47对应MySQL 5.1.47,等等。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

忘记linux命令怎么办?

2023-10-21

史上最牛linux命令?

2023-10-21

NoteExpress数据库怎么重命名?

2023-10-21

最新文章NEW

linux命令内容导出?

2023-10-21

关于linux命令语句?

2023-10-21

linux配置全局命令?

2023-10-21

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>