一、Mysql介绍
1、介绍
MySQL数据库是一款深受欢迎的开源领域的重要的关系型数据库产品,由瑞典MySQLAB公司开发与维护,2006年,MySQLAB公司被SUN公司收购,并做了很多改进,2008年,SUN公司又被数据库龙头公司甲骨文(oracle公司)收购:因此,MySQL数据库目前属于0racle公司,成为传统数据库领域老大的又一个数据库产品,甲骨文公司收购MySQL后,使得自身在商业数据库与开源数据库领域市场占有份额都跃居第一的位置,这样的格局,引起了业内很多的人士的担忧,这种担忧直接导致后来的MySQL分支数据库MariaDB的诞生与发展。
2、特点
MySQL是一种关系型数据库管理系统,关系型数据库的特点是将数据保存在不同的表中,在将这些表放入不同的数据库中不是将所有数据统一放在一个大仓库里,这样的设计增加了MySQL的读取速度,灵活性可管理性也得到了很大提高:访问以及管理MySQL数据库的最常用标准化语言为SQL结构化查询语言。
3、Mariadb诞生
自甲骨文公司收购了MySQL数据库产品后,引起了很多业界人士担忧,因为商业数据库的老大有可能将MySQL闭源的潜在风险,为了避免oracle将MySQL闭源,而无开源的类MySQL数据库可用,MySQL社区采用分支的方式来避开这个风险;因此MariaDB数据库就这样诞生了,MariaDB是一个向后兼容、可能在以后替代MySQL的数据库的一个不错的新的数据库产品,这里作者还是建议大家选择更稳定使用更广泛的MySQL数据库,MmiaDB数据库可以先测试,等产品应用人员做多一些,社区更活跃后再考虑使用为好manadb 的官方地址为https://mariadb.org/
4、Mysql的四个版本
(l)Alpha版:
A1pha版一般只在开发的公司内部运行,不对外公开:主要是开发者自己对产品进行测试,检查产品是否存在缺陷、错误,验证产品功能与说明书、用户手册是否一致:MySQL是属于开放源代码的开源产品,因此需要世界各地开发者、爱好者和用户参与软件的开发、测试和手册编写等工作:所以会对外公布此版本的源码和产品,方便任何人可以参与开发或测试工作,甚至编写与修改用户手册:
(2)Beta版:
Beta版一般是完成功能的开发和所有的测试工作之后的产品,不会存在较大的功能或性能BUGf的且邀请或提供给用户体验与测试,以便更全面地测试软件的不足之处或存在的问题;
(3)RC版:
RC版属于生产环境发布之前的一个小版本或称候选版,是根据Beta版本测试结果,收集到的BUG或缺陷之处等收集到的信息,进行修复和完善之后的一版产品;
(4)GA版:
GA版是软件产品正式发布的版本,也称生产版本的产品:一般情况下,企业的生产环境都会选择GA版本的MySQL软件,用于真实的生产环境中:偶尔有个别大型企业会追求新功能驱动而牺牲稳定性使用其它版本,但这是个例。
MySQL四种发布版本选择说明:
MySQLAB官方网站会把五种数据库版本都提供下载,主要是MySQL数据库属于开放源代码的数据库产品,鼓励全球的技术爱好者参与研发、测试、文档编写和经验分享,甚至包过产品发展规划,对于Development版本、Alpha版本和Beta版本是绝对不允许使用在任何生产环境的,肯定存在重大的问题或功能未完全实现:绝大多数情况下RC版本也是不允许使用在生产环境,毕竟这是一个GA版本之前,也即生产版本发布之前的一个小版本:另外,对MySQL数据库GA版本,也是要慎重选择,开源社区产品毕竟不是经过严格的测试工序完成的产品,是全球开源技术人员的自愿完成的,会存在比商业产品稳定性弱的缺陷。更严格的选择见后文。
官方地址提供的数据库下载版本:https://dev.mysql.com/downloads/
5、Mysql的三条产品线
近几年,为了提高巧,SQL产品的竞争优势、以及提高性能、降低开发维护成本等原因,同时,更方便企业用户更精准的选择适合的版本产品用于自己的企业生产环境中,MySQL在发展到5.1系列版本之后,重新规划为三条产品线。
第一条产品线:
第一条产品线:5.0.xx及升级到5.l.xx的产品系列,这条产品线继续完善与改进其用户体验和性能,同时增加新功能,这条路线可以说是MySQL早期产品的延续系列,这一系列的产品发布情况及历史版本如下:
MySQL5.1是当前稳定(产品质量)发布系列:只针对漏洞修复重新发布;没有增加会影响稳定性的新功能。
*MySQL5.1:Previous stable (production-quality)release
MySQL5.0是前一稳定(产品质量)发布系列:只针对严重漏洞修复和安全修复重新发布;没有增加会影响该系列的重要功能。
*MySQL5.0:Older stable release nearing the end0ftheproduct lifecycle
MySQL4.0和3.23是旧的稳定(产品质量)发布系列:该版本不再使用,新的发布只用来修复特别严重的漏洞(以前的安全问题)。
第二条产品线:
第二条产品线:为了更好地整合MySQLAB公司社区和第三方公司开发的新存储引擎,以及吸收新的实现算法等,从而更好地支持架构,提高性能而做了大量的代码重构:版本编号为从5、4.xx开始,目前发展到了5毳x=
*MySQL5.5:Latest General Availability(Production)releasee
第三条产品线:
第三条产品线:为了更好地推广版本,以及提高MySQLCluster的性能和稳定性,以及功能改进和增加,以及改动MySQL基础功能,使其对Cluster存储引擎提供更有效的支持与优化:版本号为6.0.xx阡发,目前发展到7.1.xx。
二、关系型数据库和非关系型数据库
1、特点对比
关系型数据库(RDBMS)的特点:
1)二维表
2)典型产品OracIe传统企业,MySQL互网企业
3)数据存取是通过SQL(Structured Query Language结构化查询语言)
4)最大特点数据安全性方面弼(ACID)
非关系型数据库(NoSQL:Not only SQL)的特点:
1)不是否定关系型数据库,而是做关系型数据库的补充。
2、时代对比
1.webl,0时代
1.1企业提供内容,用户浏览,所以关系型数据库够用,并发并不高,所以不需要nosq|。
2.web2.0时代
2.1核心是企业提供平台,用户参与提供内容,这个时代关系型数据库无法满足需求了。
3.2003N0sQL出现
3.1memcache的诞生,关注的是性能,但是针对安金性能关注比较低,随着安全性能需求不断提升,所以有了redis.
4.redis的待点
4.1依然高性能咼并发
4.2数据恃久化功能
4.3支恃多数据类型,主从复制和群
4.4管理不再使用SQL了
3、Mysql版本选择的建议
1)稳定版:选择开源的社区版的稳定版GA版本
2)产品线:可以选择5.1或5.5。互联网公司主流5巧,其次是5.1和5.6=
3)选择MySQL数据库GA版发布后6个月以上的GA版本:
4)要选择前后几个月没有大的BUG修复的版本,而不是大量修复BUG的集中版本:
5)最好向后较长时间没有更新发布的版本:
6)要考虑开发人员开发程序使用的版本是否兼容你选的版本:
7)作为内部开发测试数据库环境,跑大概3·6个月的时可,
8)优先企业非核心业务采用新版本的数据库GA版本软件·,
10)向DBA高手请教,或者在及技术氛围好的群里和大家一起交流,使用真正的高手们用过的好用的GA版本产品。
11)经过上述工序之后,若是没有重要的功能BUG或性能瓶颈,则可以开始考虑作为任何业务数据服务的后端数据库软件。
MySQL5,6版本选择潜规则:
GA 6-12个月 小版本为偶数版
MySQL5·7版本选择潜规则:
GA 6-12个月 小版本为偶数版 选择5,7,17以上版本(MGR)
4、官网下载mysql源码
地址:https://downloads.mysql.com/archives/
5、选择版本