目录Mysql发展历史

MySQL(发音为"my ess cue el")是一种开放源代码的关系型数据库管理系统,因为是开放源代码的,在下载后可以根据自己的需要进行修改。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

mysql初学入门教程(MySQL基础入门)(1)

MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,女性化名称Sakila源自SiSwati。Sakila也是坦桑尼亚、Arusha地区的一个镇的镇名,靠近Ambrose的母国乌干达。 MySQL名称的起源不明。一直以来,我们的基本目录以及大量库和工具均采用了前缀“my”。不过,共同创办人Monty Widenius的女儿名字也叫“My”。时至今日,MySQL名称的起源仍是一个迷,即使对我们也一样。1、MySQL的历史可以追溯到1979年,一个名为Monty Widenius的程序员在为TcX的小公司打工,并且用BASIC设计了一个报表工具,使其可以在4MHz主频和16KB内存的计算机上运行。当时,这只是一个很底层的且仅面向报表的存储引擎,名叫Unireg。

2、1990年,TcX公司的客户中开始有人要求为他的API提供SQL支持。Monty直接借助于mSQL的代码,将它集成到自己的存储引擎中。令人失望的是,效果并不太令人满意,决心自己重写一个SQL支持。

3、 1996年,MySQL 1.0发布,它只面向一小拨人,相当于内部发布。到了1996年10月,MySQL 3.11.1发布(MySQL没有2.x版本),最开始只提供Solaris下的二进制版本。一个月后,Linux版本出现了。在接下来的两年里,MySQL被依次移植到各个平台。

4、1999~2000年,MySQL AB公司在瑞典成立。Monty雇了几个人与Sleepycat合作,开发出了Berkeley DB引擎, 由于BDB支持事务处理,因此MySQL从此开始支持事务处理了。

5、2000,MySQL不仅公布自己的源代码,并采用GPL(GNU General Public License)许可协议,正式进入开源世界。同年4月,MySQL对旧的存储引擎ISAM进行了整理,将其命名为MyISAM。

6、2001年,集成Heikki Tuuri的存储引擎InnoDB,这个引擎不仅能持事务处理,并且支持行级锁。后来该引擎被证明是最为成功的MySQL事务存储引擎。MySQL与InnoDB的正式结合版本是4.0

7、2003年12月,MySQL 5.0版本发布,提供了视图、存储过程等功能。

8、2008年1月,MySQL AB公司被Sun公司以10亿美金收购,MySQL数据库进入Sun时代。在Sun时代,Sun公司对其进行了大量的推广、优化、Bug修复等工作。

9、2008年11月,MySQL 5.1发布,它提供了分区、事件管理,以及基于行的复制和基于磁盘的NDB集群系统,同时修复了大量的Bug。

10、2009年4月,Oracle公司以74亿美元收购Sun公司,自此MySQL数据库进入Oracle时代,而其第三方的存储引擎InnoDB早在2005年就被Oracle公司收购。

11、2010年12月,MySQL 5.5发布,其主要新特性包括半同步的复制及对SIGNAL/RESIGNAL的异常处理功能的支持,最重要的是InnoDB存储引擎终于变为当前MySQL的默认存储引擎。MySQL 5.5不是时隔两年后的一次简单的版本更新,而是加强了MySQL各个方面在企业级的特性。Oracle公司同时也承诺MySQL 5.5和未来版本仍是采用GPL授权的开源产品。

MySQL由于它的开源性被广泛传播,也让更多的人了解到这个数据库。它的历史也富有传奇性。在这里仅是作为一个故事讲解了MySQL的发展史,在网上很多版本也会有不同。伴随着更多的技术开发人员加入到MySQL的开发中,不断完善,发展会越来越好。

Mysql社区版和企业版的区别

● MySQL Community Server:Community是社区版本,开源免费,但不提供官方技术支持;

● MySQL Enterprise Edition:Enterprise企业版本,需付费,可以试用30天,提供官网技术支持;

企业版又分为4个商用版本:

Mysql分支版本的发展

由于Oracle收购了MySQL,考虑到可能闭源或发展缓慢,所以开源市场发展出了其他的Mysql分支版本 目前市场最主流的三大Mysql版本:Mysql;MariaDB;percona

Mysql

官方,被Oracle公司收购之后,产品一直比较稳定,商用的数据库 (稳定)

MariaDB

MariaDb起源:

Mysql原作者,MariaDB更偏向于功能的完善-(尝新),MySQL之父Widenius先生离开了Sun之后,觉得依靠Sun/Oracle来发展MySQL,实在很不靠谱,于是决定另开分支,这个分支的名字叫做MariaDB。

MariaDB跟MySQL在绝大多数方面是兼容的,对于开发者来说,几乎感觉不到任何不同。目前MariaDB是发展最快的MySQL分支版本,新版本发布速度已经超过了Oracle官方的MySQL版本。

在Oracle控制下的MySQL开发,有两个主要问题:1. MySQL核心开发团队是封闭的,完全没有Oracle之外的成员参加。很多高手即使有心做贡献,也没办法做到。2. MySQL新版本的发布速度,在Oracle收购Sun之后大为减缓。Widenius有一个ppt,用数据比较了收购之前和之后新版本的发布速度。有很多bugfix和新的feature,都没有及时加入到发布版本之中。

以上这两个问题,导致了各个大公司,都开发了自己定制的MySQL版本,包括Yahoo!/Facebook/Google/阿里巴巴 淘宝网等等。

MySQL是开源社区的资产,任何个人/组织都无权据为己有。为了依靠广大MySQL社区的力量来更快速的发展MySQL,另外开分支是必须的。

Percona Server

Percona起源: Mysql原运维部总监,Percona公司更偏向于开发运维工具--性能调优,MySQL AB的创始人之一Monty Widenius和原来的MySQL AB工程师,现在的percona公司CEO联合组成一个新的开源数据库联盟,命名为:Alliance。这算是Oracle收购Sun后的一个反击,让大家看到了MySQL衍生品的后续发展前景

Mysql 基础架构

mysql初学入门教程(MySQL基础入门)(2)

术语介绍

mysql初学入门教程(MySQL基础入门)(3)

架构图

mysql初学入门教程(MySQL基础入门)(4)

mysql初学入门教程(MySQL基础入门)(5)

File Syttem: Files & Logs:

,