第2章MySQL数据库入门知识介绍2.1MySQL介绍2.1.1MySQL简介

后面早已介绍过,MySQL属于传统的关系型数据库产品,其开放式的构架促使用户的选择性很强,但是随着技术的日渐成熟,MySQL支持的功能也越来越多,性能也在不断地提升,对平台的支持也在增多,再者,社区的开发与维护人数也好多。当下,MySQL由于其功能稳定、性能卓越,且在遵循GPL合同的前提下,可以免费使用与更改,因而受到用户喜爱。

我们晓得,关系型数据库的特征是将数据保存在不同的表中,再将这种表装入不同的数据库中,而不是将所有的数据统一放到一个大库房里,这样的设计推动了MySQL的读取速率,但是它的灵活性和可管理性也得到了很大的提升。访问及管理MySQL数据库的最常用标准化语言为SQL——结构化查询语言。SQL促使对数据库进行储存、更新和存取信息的操作显得愈发容易。比如,你能用SQL为一个网站检索产品信息及储存用户信息、博文、帖子等,有关SQL的知识后文会详尽讲解。

2.1.2MariaDB数据库的诞生背景介绍

自甲骨文公司竞购MySQL以后,MySQL在商业数据库与开源数据库领域的市场占有份额都居于第一,这样的格局导致了部份业内人士的担心,由于商业数据库的老大有可能将MySQL闭源,为了防止Oracle将MySQL闭源,而无开源的类MySQL数据库可用,MySQL社区采用了分支的方法——MariaDB数据库就这样诞生了,MariaDB是一个向后兼容的数据库产品,可能会在之后取代MySQL,其官方地址为。不过,这儿还是建议你们选择更稳定且使用更广泛的MySQL数据库,可以先测试MariaDB数据库,等使用的人员多一些,社区更活跃后再即将考虑使用也不迟。

2.1.3为何选择MySQL数据库

毫无疑惑,选择MySQL数据库已是既成事实,绝大多数使用Linux操作系统的互联网网站都在使用MySQL作为其前端的数据库储存方法,从小型的BAT门户到电商平台、分类门户等无一例外。这么,MySQL数据库究竟有什么优势和特性,让你们不约而同地选择它呢?

缘由可能有以下几点。

MySQL性能卓越,服务稳定,极少出现异常宕机的情况。

MySQL开放源代码且无版权掣肘,自主性强,使用成本低。

MySQL历史悠久,社区及用户特别活跃,碰到问题,可以寻求帮助。

MySQL软件容积小,安装使用简单,而且便于维护linux命令大全,安装及维护成本低。

MySQL数据库企业版与社区版区别_MySQL数据库入门知识_linux 查看数据库版本

MySQL品牌口碑效应好,致使企业无须考虑即可直接用之。

LAMP、LNMP、LNMT(tomcat)等流行Web构架都富含MySQL。

MySQL支持多种操作系统,提供了多种API,支持多种开发语言,非常是对流行的Java、Python、PHP等语言都有挺好的支持。

提示:官方给出的使用MySQL理由见html。

2.2MySQL数据库分类与版本升级

MySQL数据库的官方网站为,其发布的MySQL版本采用双授权新政,和大多数开源产品的路线一样,MySQL数据库也有社区版和企业版之分,且这两个版本又各自分了四个版本依次发布,这四个版本分别为:Alpha版、Beta版、RC版和GA版本。

2.2.1MySQL数据库企业版与社区版的区别1.MySQL数据库企业版介绍

MySQL企业版由MySQLAB公司内部专门的人员负责开发及维护,但同时也会吸纳社区人员编撰的优秀代码及算法,但是由她们严格依照软件测试流程对那些采纳的代码进行测试,确定没有问题以后才能进行发布。简单地说,MySQL企业版是由MySQL公司内部发布的,它参考了社区版的先进代码功能和算法,是MySQL公司的盈利产品,须要付费就能使用及提供服务支持,稳定性和可靠性无疑都是最好的,其实了,企业腰包得够鼓能够买得起。据老男孩了解的信息,某著名分类门户网站2008年就订购过MySQL企业版,价钱不比这些闭源的商业数据库实惠,也是大几十万。

2.MySQL数据库社区版介绍

MySQL社区版则是由分散在世界各地的MySQL开发者、爱好者以及用户参与开发与测试的,包括软件代码的管理、测试工作,也是她们在负责。社区也会筹建BUG汇报机制,搜集用户在使用过程中遇见的BUG情况,相比于企业版,社区版的开发及测试环境没有这么严格。

3.MySQL数据库企业版与社区版的区别

MySQL是成熟产品,企业版与社区版之间在性能方面相差不大。它们的区别主要集中在以下几个方面。

企业版本组织管理与测试环节控制更严格,稳定性更好。

MySQL数据库企业版与社区版区别_MySQL数据库入门知识_linux 查看数据库版本

企业版不遵循GPL合同,社区版遵循GPL合同,可以免费使用!

使用企业版后可以选购相关的服务,例如,享受7×24小时的技术支持以及定时打补丁等服务,并且用户必须因此支付服务费用。社区版的服务质量与时效性等就难以与企业版相比了。

社区版本的维护服务只能靠社区提供,其未能像企业版本那样获得故障及补丁解决服务,然而,使用社区版是完全免费的形式。

2.2.2MySQL数据库的四种发布版本介绍

后面早已探讨过,MySQL的版本发布采用的是双授权新政,即分为社区版和企业版,而这两个版本又各自分为四个版本,依次发布:Alpha版、Beta版、RC版和GA版本。

这四种发布版本之间的说明及区别具体如下。

(1)Alpha版

Alpha版通常只在开发的公司内部运行,不对外公开。主要是开发者自己对产品进行测试,检测产品是否存在缺陷、错误,验证产品功能与说明书、用户指南是否一致。MySQL属于开放源代码的开源产品,因而须要世界各地的开发者、爱好者和用户参与软件的开发、测试和指南编撰等工作。自然也就必须对外公布此版本的源码和产品了,以便捷他灵芝与开发或测试工作,甚至编撰与更改用户指南。

(2)Beta版

Beta版通常是完成功能的开发和所有的测试工作以后的产品,不会存在较大的功能或性能上的BUG,一般会约请或提供给用户体验与测试,便于更全面地测试软件的不足之处或存在的问题。

(3)RC版

RC版属于生产环境发布之前的一个小版本或称候选版,是依据Beta版本的测试结果,搜集到的BUG或缺陷等信息,进行修补和建立以后的一版产品。

(4)GA版

GA版是软件产品即将发布的版本,称作生产版本的产品。通常情况下,企业的生产环境就会选择GA版本的MySQL软件,用于真实的生产环境中。时常有某些小型企业会为追求新功能驱动而牺牲稳定性使用其他版本,但只是个例。

既然有四种发布版本,这么怎样进行选择呢?

MySQLAB官方网站会把各类数据库版本都上传到网站,以供不同的用户下载,主要是MySQL数据库是属于开放源代码的数据库产品,其鼓励全球的技术爱好者参与研制、测试、文档编撰和经验分享,甚至还包括产品的发展规划。对于Development版本、Alpha版本和Beta版本,应严禁在生产环境中使用,由于很可能会存在重大的问题或是有些功能未被完全实现。绝大多数情况下,RC版本也是不容许使用在生产环境中的,虽然这是一个在GA版本之前(也即生产版本发布之前)的小版本。另外,对于MySQL数据库GA版本,也须要谨慎选择,开源社区的产品虽然不是经过严格的测试工序完成的,是全球开源技术人员自愿完成的,会存在比商业产品稳定性弱的缺陷。更严格的选择旁边会有进一步的说明。

linux 查看数据库版本_MySQL数据库入门知识_MySQL数据库企业版与社区版区别

国外门户提供的MySQL下载地址:

2.3MySQL数据库软件的命名介绍

MySQL数据库软件的版本号是由3个数字和一个后缀组成。诸如,mysql-5.6.40.tar.gz的版本号,其数字的涵义分别如下。

第1个数字(5)是主版本号,描述了文件格式。所有版本5的发行都有相同的文件格式。

第2个数字(6)是发行级别。主版本号和发行级别组合到一起便构成了发行序列号。

第3个数字(40)是指在此发行系列的版本号,随每位新分发版而递增。一般你须要早已选择的发行(release)的最新版本(版本)。

每次更新以后,版本字符串的最后一个数字会递增。假如是相对于前一个版本降低了新功能或有微小的不兼容性,这么字符串的第二个数字会递增。假如文件格式改变,这么第一个数字会递增。

至于版本号中的后缀linux系统下载官网,那是拿来显示发行的稳定性级别的,通过这一系列后缀显示怎么改进稳定性。可能的后缀有:alpha版、beta版、rc版、没有后缀(稳定版或GA版)。这几个后缀对应的说明可参见2.2.2节。

2.4MySQL产品路线2.4.1MySQL产品路线变更历史背景

初期,MySQL也是遵守版本号日渐降低的形式发展,格式形如mysql-X.XX.XX.tar.gz,比如,老DBA都十分熟悉的生产场景下的版本:MySQL4.1.7、MySQL5.0.56等。

近几年,为了提升MySQL产品的竞争优势,提升性能、降低开发维护成本等,也为了便捷企业用户更精准地选择合适的版本,MySQL在发展到5.1系列以后,又重新规划为三条产品线。下边一上去瞧瞧。

2.4.2MySQL-5.0.xx到MySQL-5.1.xx的产品线

第一条产品线为:MySQL5.0.xx升级到MySQL5.1.xx,这条产品线继续建立与改进其用户体验和性能,同时又降低了新功能,可以说这条路线是MySQL初期产品的延续,这一系列产品的发布情况及历史版本如下。

MySQL5.1是当前的稳定发布系列版本。只针对漏洞修补重新发布;没有降低会影响稳定性的新功能。

MySQL5.0是前一个稳定发布系列版本。只针对严重漏洞修补和安全修补重新发布;没有降低会影响该系列的重要功能,但是官方也很快停止了对其的支持。

linux 查看数据库版本_MySQL数据库入门知识_MySQL数据库企业版与社区版区别

MySQL4.0和MySQL3.23是旧的稳定发布系列版本。该版本建议不再使用,但是官方早已停止了对其的支持。

目前Redhatlinux7以及CentOS7曾经的官方yum源里附送的还是MySQL5.1的版本,而且在绝大多数的小型互联网企业的重要场景里,早已罕见5.1版本了,当下,本系列的产品线早已发布到了5.2系列(非稳定版)。

2.4.3MySQL-5.4.xx到MySQL-5.7.xx产品线

为了更好地整合MySQLAB公司社区和第三方公司开发的新储存引擎linux 查看数据库版本,以及吸收新的实现算法等,因而更好地支持SMP构架并提升性能,第二条产品线做了大量的代码构建。版本编号从5.4.xx开始,最新稳定版为5.7.xxlinux 查看数据库版本,目前发展到了6.0.xx和8.0.xx(非稳定版)。

据官方讲,MySQL5.6是有史以来最好的版本,是世界上使用最广的开源数据库,它提供了一套新的、先进的功能,使我们能否建设新一代基于网路和嵌入式的应用和服务。

在企业中,目前是MySQL5.5和MySQL5.6并存的主流时代,MySQL5.7是未来,本书的讲解主要以MySQL5.6大版本为主,同时兼具MySQL5.5,并尽可能兼具MySQL5.7。

2.4.4MySQL-Cluster-6.0.xx到MySQL-Cluster-7.5.xx产品线

为了更好地推广MySQLCluster版本,提升MySQLCluster的性能和稳定性,改进和降低功能,使其对Cluster储存引擎提供更有效的支持与优化,因而研制了第三条产品线。该产品线的版本号为6.0.xx,目前已发展到7.5.xx。

图2-1为MySQL各版本的发展参考图,对应时间通常为最后更新时间,而非发布时间。

linux 查看数据库版本_MySQL数据库入门知识_MySQL数据库企业版与社区版区别

图2-1MySQL的各版本发展的参考图

2.5生产场景中怎样选择MySQL版本2.5.1MySQL数据库发布特点

商业软件研制和发行公司,还会提供经过完整测试,甚至多种用户环境模拟测试及试用以后,才推出的稳定的生产环境版本,这也促使技术人员对于商业数据库软件的选择,通常不须要有太多的疑虑与考虑。

在大公司(像BAT等),对于数据库软件版本的选择,也会有相关人员详尽阅读其新功能或改进点知识,而且会做好多相关的研究和测试工作,最后才逐渐上线,并且是从边沿业务渐渐过渡到核心业务。

目前,对于MySQL的企业版本,须要注册帐号才可以下载到编译过的安装包或源代码,但是帐号只有一个月的有效期;社区版本的MySQL产品,则不须要注册帐号,只要填写一些信息即可转入下载页面。

2.5.2企业生产场景选择MySQL数据库的建议

企业生产场景下,数据库是重中之重,因而选择MySQL数据库一定要谨慎。下边是给出的一些选择建议。

1)一定要选稳定版版本,即选择开源的社区版的稳定版。

MySQL数据库入门知识_MySQL数据库企业版与社区版区别_linux 查看数据库版本

2)产品线选择,建议选择第二条产品线中的5.5或5.6版本。目前互联网公司主流版本是5.5和5.6。

3)选择MySQL数据库起码发布半年以上的稳定版本。

4)要尽可能选择前后几个月没有大的BUG修补的版本,而不是大量修补BUG的集中版本。

5)最好选择向后较长时间没有更新发布的版本。

6)要考虑开发人员开发程序使用的版本是否兼容你所选的版本。

7)首先作为内部开发测试数据库环境,测试运行几个月的时间。

8)优先对企业非核心业务采用新的数据库稳定版本软件。

9)向前辈讨教或则在及技术气氛好的群里和你们一起交流,使用真正的前辈用过的、好用的且BUG少的GA版本产品。

经过上述工序以后,若是没有重要的功能BUG或性能困局,则可以开始考虑作为任何业务数据服务的前端数据库软件了。

上述为选择的流程建议,实际上好多中小公司就会直接选择GA版的最新版本,假如业务中使用的功能比较单一,且数据和访问量不是很大,通常也不会有哪些大问题,上述选择的建议,是以大规模大数据量高并发,使用数据库功能较多的场景为前提进行讲解的,对于这类场景,一定要谨慎选择。

参考资料:

2.6章节试卷

1)在企业中怎样正确选择MySQL的版本?

2)请描述MySQL的不同产品路线及发展情况?

3)MySQL与MariaDB的基本区别是哪些?

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复