MySQL 版本

版本

  1. MySQL Community Server 社区版本,开源免费,但不提供官方技术支持。
    MySQL公司一直专注于向开源社区发布全球最流行的开源数据库——MySQL Community Server。在开源GPL许可证之下可以自由的使用。
  2. MySQL Enterprise Edition 企业版本,需付费,可以试用30天。
    2006 年底,MySQL 开始发行 MySQL Enterprise。至今,MySQL 企业版是一个已被证明和值得信赖的平台,这个平台包含了 MySQL 企业级数据库软件,、监控与咨询服务,以及确保您的业务达到最高水平的可靠性、安全性和实时性的技术支持。
  3. MySQL Cluster 集群版,开源免费。可将几个MySQL Server封装成一个Server。
  4. MySQL Cluster CGE 高级集群版,需付费。
  5. MySQL Workbench(GUI TOOL)一款专为MySQL设计的ER/数据库建模工具。它是著名的数据库设计工具DBDesigner4的继任者。MySQL Workbench又分为两个版本,分别是社区版(MySQL Workbench OSS)、商用版(MySQL Workbench SE)。

GA (Generally Available)是指软件的通用版本,一般指正式发布的版本。
选择 Generally Available(GA)Release 去下载。

历史

MySQL 之父 Michael Monty Widenius,这位数据库大神一手创办了 MySQL 和 MariaDB(MySQL 的衍生版本)。
这里写图片描述
图左

官网给出的下载版本:https://downloads.mysql.com/archives/community/

MySQL 版本
- 8.0
- 5.7 GA(2015-10)
Drizzle,它是Sun/MySQL的Brian在2008年提出的一个计划。目标是将开发一个更小、更轻、更快的数据库,用作云计算(Cloud Computing)和Web应用的基础架构。
Drizzle 是 MySQL 6.0的一个分支,也采用客户端/服务器端(C/S)的架构,并基于GPL v2发布。
- 5.6
- 5.4 Beta(2009-4)
- 被 Oracle 收购
2009年,数据库老大Oracle大笔一挥,开出74亿美元的支票,将 Sun Microsystems 和 MySQL 通盘收于旗下。
然而这一收购似乎并未完全达到 Oracle 的目的:早在08年MySQL被Sun收购之后,MySQL 旧部就成立了新公司 SkySQL;当 Sun 被 Oracle 收购后,又有一批高层出去创立了Monty Program Ab(MariaDB的母公司)。后来 SkySQL 与 Monty Program Ab 协议合并(合并后用 SkySQL 名字运作),全力发展 MySQL 的衍生版本 MariaDB。
(据 Gigaom消息,新公司将包括Widenius、David Axmark(MySQL联合创始人)、Magnus Stenberg(前MySQL销售总监)这些 MySQL 的老人,然而更“恐怖”的是合并后公司共有70名员工,其中有50个是MySQL的旧部。)
- 5.1 GA(2008-11)
事件图表(Event scheduler)、分区(Partitioning)、Pluggable storage engine API ,Row-based replication、Global级别动态修改general query log和slow query log的支持。
- 被 Sun 收购
2008年2月,当时的业界开源老大Sun Microsystems动用10亿美元收购了MySQL,造就了开源软件的收购最高价。这次交易给开源交易设立了一个新的基准。在此之前的交易金额(JBoss、Zimbra、XenSource、Gluecode)从没接近过10亿美元,全部加起来才差不多与Sun Microsystems购买MySQL的花费持平。MySQL被收购之后,MySQL图标停止使用,取而代之的是Sun/MySQL图标。
被收购后,怕被限制 MySQL 的前进,MySQL 前高管找来投资者,成立了新公司 SkySQL。目的是提供 MySQL/MariaDB 生态系统的支持。公司承诺其不会强迫用户从MySQL转移到MariaDB,并将继续发展为用户提供的MySQL支持。
- 5.0 GA(2005-10)
- 默认数据库存储引擎改为InnoDB,并且引进了Innodb plugin 1.0.7:InnoDB的数据恢复时间从过去的一个甚至几个小时,缩短到几分钟(InnoDB plugin 1.0.7,InnoDB plugin 1.1, 恢复时采用红-黑树)。InnoDB Plugin 支持数据压缩存储,节约存储,提高内存命中率,并且支持adaptive flush checkpoint, 可以在某些场合避免数据库出现突发性能瓶颈。
- Multi Rollback Segments:原来InnoDB只有一个Segment,同时只支持1023的并发。现已扩充到128个Segments,从而解决了高并发的限制
- 多核性能提升
Metadata Locking (MDL) Framework替换LOCK_open mutex (lock),使得MySQL5.1及过去版本在多核心处理器上的性能瓶颈得到解决,官方表示将继续增强对MySQL多处理器支持,直至MySQL性能 “不受处理器数量的限制”。
- 复制功能(Replication)加强
MySQL复制特性是互联网公司应用非常广泛的特性,作为MySQL最实用最简单的扩展方式,过去的异步复制方式已经有些不上形势,对某些用户 来说“异步复制”意味着极端情况下的数据风险,MySQL5.5将首次支持半同步(semi-sync replication)在MySQL的高可用方案中将产生更多更加可靠的方案。另外Slave fsync tunning;Relay log corruption recovery和Replication Heartbeat也将实现。
- 增强表分区功能
MySQL 5.5的分区对用户绝对是个好消息,更易于使用的增强功能,以及TRUNCATE PARTITION命令都可以为DBA节省大量的时间,有时对最终用户亦如此:
1)非整数列分区:任何使用过MySQL分区的人应该都遇到过不少问题,特别是面对非整数列分区时,MySQL 5.1只能处理整数列分区,如果你想在日期或字符串列上进行分区,你不得不使用函数对其进行转换。很麻烦,而MySQL 5.5中新增了两类分区方法,RANG和LIST分区法,同时在新的函数中增加了一个COLUMNS关键词。在MySQL 5.1中使用分区另一个让人头痛的问题是date类型(即日期列),你不能直接使用它们,必须使用YEAR或TO_DAYS转换这些列,但在MySQL 5.5中情况发生了很大的变化,现在在日期列上可以直接分区,并且方法也很简单;
2)多列分区:COLUMNS关键字现在允许字符串和日期列作为分区定义列,同时还允许使用多个列定义一个分区;
3) 可用性增强:truncate分区。分区最吸引人的一个功能是瞬间移除大量记录的能力,DBA都喜欢将历史记录存储到按日期分区的分区表中,这样可以定期 删除过时的历史数据。 但当你需要移除分区中的部分数据时,事情就不是那么简单了,删除分区没有问题,但如果是清空分区,就很头痛了,要移除分区中的所有 数据,但需要保留分区本身,你可以:使用DELETE语句,但我们知道DELETE语句的性能都很差。使用DROP PARTITION语句,紧跟着一个EORGANIZE PARTITIONS语句重新创建分区,但这样做比前一个方法的成本要高出许多。MySQL 5.5引入了TRUNCATE PARTITION,它和DROP PARTITION语句有些类似,但它保留了分区本身,也就是说分区还可以重复利用。TRUNCATE PARTITION应该是DBA工具箱中的必备工具;
4) 更多微调功能:TO_SECONDS:分区增强包有一个新的函数处理DATE和DATETIME列,使用TO_SECONDS函数,你可以将日期/时间列转换成自0年以来的秒数,如果你想使用小于1天的间隔进行分区,那么这个函数就可以帮到你;
- Insert Buffering
如果在buffer pool中没找到数据,那么直接buffer起来,避免额外的IO;Delete & Purge Buffering 跟插入一样,如果buffer pool中没有命中,先buffer起来,避免额外的IO。
- Support for Native AIO on Linux
以上的特性在MySQL 5.5的社区版当中都将包括,在MySQL企业版当中,除以上更新之外,Oracle还加强了更多实用的企业级功能,包括:
1. 实现在线物理热备
  MySQL 企业版将包含Innodb Hotbackup(这也许是MySQL和InnDB多年之后重新聚首的新亮点),从而一举解决过去MySQL无法进行可靠的在线实时物理备份的问题, InnoDB Hot Backup 不需要你关闭你的服务器也不需要加任何锁或影响其它普通的数据操作,这对MySQL DBA来说应该是一个不错的消息。
2. MySQL Enterprise Monitor 2.2 & Oracle Enterprise Monitor
  是的,你没有看错,MySQL将可以被Oracle Enterprise Monitor监控,这是一个实现起来并不复杂,但在过去绝无可能的变化。并且MySQL企业版监控器(MySQL Enterprise Monitor)得到了更大的加强,版本更新至2.2,对MySQL服务器资源占用降低到可以忽略的地步,集成了监控,报警,SQL语句分析和给出优化建 议,MySQL的一些开源监控方案相比之下显得过于简陋,对企业客户来说,MySQL变得更加可靠。
3. MySQL Workbench
  过去MySQL的图形界面工具做的实在是令人难以恭维,当然这也给众多MySQL管理工具提供了市场空间,现在Oracle打算将MySQL做 得比SQL-Server更加简单易用,MySQL Workbench是一款专为MySQL设计的ER/数据库建模工具,可以用来设计和创建新的数据库图示,建立数据库文档,以及进行复杂的MySQL 迁移等操作,因此内置workbench将使MySQL使用起来更简便高效。
4. 关于未来的重要提醒:Oracle的管理工具,MySQL也将能够使用,当然MySQL 5.5我们还没看到这个变化,但变化已经在时间表上,MySQL社区版也能够被Oracle管理工具管理,前提你得是Oracle数据库的用户。

  • 5.0 Beta(2005-3)
    MySQL 4.1还在Alpha版时,公司已决定并行开发5.0版。因为他们打算加快MySQL的开发速度以适应日益苛刻的市场需求。这个新版本是有史以来 MySQL 变化最大的一次。
    增加存储过程(Stored procedures)、视图(Views)、游标(Cursors)、触发器(Triggers)、查询优化、分布式事务(XA transactions)的支持,并增加了系统数据库 - 数据图表(INFORATION_SCHEMA)
  • 4.1 GA(2004-10)
  • 4.1 Beta(2004-6)
    经过两年的公开测试和应用,包含InnoDB的MySQL已经变得非常稳定了。
    增加子查询,字符集增加UTF-8,增加预编译 SQL 语句,GROUP BY 语句增加了 ROLLUP ,mysql.user 表采用了更好的加密算法。
  • 4.0 GA(2003-3)
  • 4.0 Beta(2002-8)
    InnoDB 整合其中。
  • 3.23 GA(2001-1)
    2001年,芬兰公司 Heikiki Tuuri 开始接触 MySQL AB,讨论将Heikki的存储引擎InnoDB整合到MySQL数据库中的可行性(这个引擎同样支持事务处理,还支持行级锁)。
  • 3.23 Beta(2000-6)
    该版本包含务型存储引擎BDB。与此同时,芬兰公司Heikki开始接触MySQL AB,讨论将Heikki的存储引擎InnoDB整合到MySQL数据库中的可行性。
  • MySQL公司
    1999年冬(还有一个版本说是1995年),两个瑞典人Michael Widenius、Allan Larsson和一个芬兰人David Axmark 在瑞典的中部城市 Uppsala 成立公司 MySQL AB (AB是瑞典语“股份公司”的意思)。MySQL AB是开源软件数据库软件MySQL的后台支持公司。
    2000年4月,MySQL对旧的存储引擎进行了整理,命名为MyISAM。
  • 3.11.1(没有2.x版本)
    1996年10月,发布公开版MySQL 3.11.1。
    接下来的两年里,MySQL依次移植到各个平台下。到1998时,MySQL能够运行在10多种操作系统之上,其中包括应用非常广泛的 FreeBSD、Linux、Windows 95和Windows NT等。
    很快MySQL 3.22也发布了。支持多种字段类型并且提供了完整的操作符支持查询中的SELECT和WHERE操作。
    但它仍然存在很多问题–如不支持事务操作、子查询、外键、存储过程和视图等功能。正因为这些缺陷,当时许多Oracle和SQL Server的用户对MySQL根本不屑一顾。
  • 1.0
    1995年5月23日,发布第一个内部版本。
  • 1979 年
    (该版本从网上搜集而来,并无考证)1979年,Allan Larsson 和 Michael Widenius(Monty)开了一家自己的咨询公司,取名TcX(名字的由来已无从考证)。Monty 用 BASIC 设计了一个报表工具 Unireg(后又用C语言重写,移植到Unix平台上),运行在瑞典人制造的 ABC800 计算机
    (CPU:4MHz 的 Z80,内存:32KB)上。当时,它只是一个很底层的面向报表的存储引擎。
    1983年,Monty 遇到了David Axmark,开始合作运营TcX,Monty负责技术,David搞管理。后来TcX将UNIREG移植到其他更加强大的硬件平台,主要是Sun的平台。
    瑞典人制造的 ABC800 计算机
    这里写图片描述
    1990年,TcX 的customer 中开始有人要求要为它的API提供SQL支持,当时,有人想到了直接使用商用数据库算了,但是Monty觉得商用数据库的速度难令人满意。于是,Monty找到了David Hughes–mSQL的发明人,商讨合作事宜。然而,经过一番测试后,他们发现mSQL的速度并不尽如人意,无法满足客户的需求。于是,Monty雄心大起,决心自己重写一个SQL支持。
    1994年,MySQL 开始设计、开发。

猜你喜欢

转载自blog.csdn.net/wsh900221/article/details/80115266
今日推荐