MySQL1:MySQL发展史,MySQL流行分支及其对应存储引擎
MySQL发展史
MySQL的发展历史和版本分支:
时间 | 里程碑 |
---|---|
1996年 | MySQL 1.0发布。它的历史可以追溯到1979年,作者Monty用BASIC设计 的一个报表工具 |
1996年10月 | 3.11.1发布,MySQL没有2.x版本 |
2000年 | ISAM升级成MylSAM引擎 MySQL开源 |
2003年 | MySQL 4.0发布,集成InnoDB存储引擎 |
2005年 | MySQL 5.0本发布,提供了视图、存储过程等功能 |
2008年 | MySQL AB公司被Sun公司收购,进入Sun MySQL时代 |
2009年 | Oracle收购Sun公司,进入Oracle MySQL时代 |
2010年 | MySQL 5.5发布,InnoDB成为默认的存储引擎 |
2016年 | MySQL发布8.0.0版本。为什么没有6、7? 5.6可以当成6.x, 5.7可以当 成 7.Xo |
虽然MySQL8.0.0出了这么多年,目前使用最多的还是MySQL5.7的版本。
2000年MySQL开源之后(也有商业版本),在MySQL稳定版本的基础上也发展出来了很多的分支,就像Linux也有很多分支—样,例如:Ubuntu、RedHat、CentOSs Fedora、Debian。
MySQL流行分支及其对应存储引擎
MariaDB-Maria存储引擎
我们最熟悉的MySQL分支应该是MariaDB,因为CentOS 7里面自带了一个MariaDB。
MariaDB的由来?
Oracle收购MySQL之后MySQL创始人之一Monty担
心MySQL数据库发展的未来(开发缓慢,封闭,可能会被闭源),就创建了一个分支MariaDB (2009年),默认使用全新的Maria存储引擎,它是原MylSAM存储引擎的
升级版本。
Percona Server-XtraDB存储引擎
Percona Server是MySQL重要的分支之一,它基于InnoDB存储引擎的基础上,提升了性能和易管理性,最后形成了增强版的XtraDB存储引擎,可以用来更好地发挥服务器硬件上的性能。
其它存储引擎
国内也有一些MySQL的分支或者自研的存储引擎,比如网易的InnoSQL,极数云舟的ArkDB。
我们操作数据库有各种各样的方式,比如Linux系统中的命令行,比如数据库工具,又或者是程序,例如Java语言的JDBC API或者ORM框架。
那么当工具或者程序连接到数据库之后,是如何执行SQL的?MySQL它的内部是怎么工作的?
这个就涉及到MySQL的整体架构和工作流程了。
MySQL合集
MySQL1:MySQL发展史,MySQL流行分支及其对应存储引擎
MySQL2:MySQL中一条查询SQL是如何执行的?
MySQL3:MySQL中一条更新SQL是如何执行的?
MySQL4:索引是什么;索引类型;索引存储模型发展:1.二分查找,2.二叉查找树,3.平衡二叉树,4.多路平衡查找树,5. B+树,6.索引为什么不用红黑树?7.InnoDB的hash索引指什么?
MySQL5:MySQL数据存储文件;MylSAM中索引和数据是两个独立的文件,它是如何通过索引找到数据呢?聚集索引/聚簇索引,InnoDB中二级索引为什么不存地址而是存键值?row ID如何理解?
MySQL6:索引使用原则,联合索引,联合主键/复合主键,覆盖索引、什么是回表?索引条件下推,索引的创建与使用,索引的创建与使用,索引失效