mysql历史线

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

MySQL名字由来

  其实MySQL最初的出发点是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:mSQL的速度或灵活性不足以满足要求。这导致了为数据库提供了新的SQL接口,这样,这个API被设计成允许为用于mSQL而写的第三方代码更容易移植到MySQL。大多数认为在不需要处理事务化处理的情况下,MySQL是管理内容最好的选择。

  MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Ambrose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,女性化名称Sakila源自SiSwati。Sakila也是坦桑尼亚、Arusha地区的一个镇的镇名,靠近Ambrose的母国乌干达。

  MySQL名称的起源不明。一直以来,我们的基本目录以及大量库和工具均采用了前缀“my”。不过,共同创办人Monty Widenius的女儿名字也叫“My”。时至今日,MySQL名称的起源仍是一个迷,即使对我们也一样。

  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授权的开源产品。

        12、2011年4月,MySQL 5.6发布,作为被Oracle收购后,第一个正式发布并做了大量变更的版本(5.5版本主要是对社区开发的功能的集成),对复制模式,优化器等做了大量的变更,其中最重要的主从GTID复制模式,大大降低了MySQL高可用操作的复杂性,除此之外,由于对源代码进行了大量的调整,到2013年,5.6版本才正式GA。

        13、2013年4月,5.6版本GA后,新特性的变更,开始作为独立的5.7分支进行进一步开发,在并行控制,并行复制等方面,进行了大量的优化调整,正式GA于2015年10月份,这个版本也是到目前为止的,最新的稳定版本分支。

        14、2016年9月,Oracle决定跳过MySQL 5.x命名系列,并抛弃之前的MYSQL 6,7两个分支(从来没有对外发布的两个分支),直接进入MySQL 8版本命名,也就是MySQL 8.0版本的开发,目前这个版本仍旧处于开发中,新特性尚未稳定。

        15、2018-04-19, General Availability  https://dev.mysql.com/doc/relnotes/mysql/8.0/en/

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 插件式存储引擎架构,灵活的处理方式,高度可定制化及完全开放的实现 MySQL存储引擎概述 MyISAM存储引擎是M...
    每天学点编程阅读 1,287评论 0 5
  • 第一章 MySQL 体系架构和存储引擎 mysql是数据库也是数据库实例 mysql 是一个单进程多线程架构的数据...
    snail_knight阅读 3,559评论 0 6
  • 经过几天的的上课,我觉得自己的知识流失的太严重了,简直就是惨不忍睹啊!昨晚上,上数学课,老师发了一套卷子,很多看似...
    whb3246阅读 215评论 0 0
  • 亲爱的种子们: 你们好! 这一周,真是让人充满期待啊!我们学习了《论语》十二章,孔子不愧是至圣先师,在千百年前提出...
    胡喜平阅读 328评论 0 0
  • 虽然也知道能流传下来的老话都是经得起历史考验的,但早些年其实对“君子之交淡如水”这句话也是心存疑问的。那时候觉得,...
    刘建强阅读 2,702评论 0 6