MySQL发展史与架构

  • MySQL发展史
  • MySQL 架构略写


MySQL发展史

  1. 版本3.2.3(2001)
    一般认为这个版本是MYSQL正式出现的时刻,这时MYSQL也进行了广泛的运用,其中最大的改变是引入了MyISAM引擎 代替了ISAM引擎,这时InnoDB也可以使用,但必须要手动引入。之所以使MYSQL在互联网广泛的使用原因主要是复制这一关键特性。
  2. 版本4.0(2003)
    支持了新的语法,比如UNION和多表DELETE操作。重写了复制,支持两个线程进行复制操作,提高了效率。引入了查询缓存(后续版本变动不大)。并且此版本InnoDB引擎变成了主流。
  3. 版本4.1(2005)
    引入了更多的语法,比如子查询。开始支持UTF-8字符集。
  4. 版本5.0(2006)
    这版本出现了企业级特性:视图、函数、存储过程、触发器。
  5. 版本5.1(2008)
    这时sun公司收购 MySQL AB 发布的第一个版本,引入了分区,基于行的复制。发布了InnoDB plugin。
  6. 版本5.5(2010)
    这是Oracle收购sun后发布的首个版本,版本5.5主要改善了分区、复制、性能、拓展、以及对windows系统的支持、这时InnoDB成为默认引擎,支持了缓存池。
  7. 版本5.6(2011-2020)
    这个版本现在还在进行迭代和更新。主要是在5.5版本的基础上对服务器进行性能提升和开发,对查询优化器进行改造。InnoDB可配置数据字典缓存。
  8. 版本5.7(2013-2020)
    自MySQL 5.7.5起,不再支持使用较早的4.1之前的密码哈希格式的密码,这涉及以下更改。必须修改使用不再受支持的功能的应用程序。
  9. 版本8.0(2016-2020)
    数据字典优化,caching_sha2_password作为首选身份验证插件,MySQL存储引擎现在负责提供自己的分区处理程序,而MySQL服务器不再提供通用分区支持,默认字符集已从更改 latin1为utf8mb4。

MySQL 架构略写

1.下图是最典型的MySQL逻辑架构图

Mysql 各版本发展 mysql各版本发布时间_mysql


主要分为三层

  • 第一层:服务层不止是MySQL 独有,大多数基于网络端/服务端的工具都有类似的架构,主要用于认证、安全、连接处理等。
  • 第二层:MySQL的大多数服务功能都在这里体现,如查询优化、缓存、分析。所有跨存储器引擎的功能都在这一层体现:存储过程、触发器、视图等。
  • 第三层:存储引擎负责MySQL中数据的存储和提取,但存储引擎不会去解析MYSQL,只会简单的响应上层服务器请求,引擎不会相互通信。