MySQL 被 Oracle 收购前的最后一个独立社区版本是 MySQL 5.1(具体为 MySQL 5.1.37,发布于 2009 年 8 月),而 Oracle 收购 Sun Microsystems(MySQL 母公司)的时间是 2010 年 1 月。以下是关键时间线:


1. 关键版本与时间节点

版本发布时间说明
MySQL 5.1 GA2008 年 11 月Sun Microsystems 发布的最后一个主要版本
MySQL 5.1.372009 年 8 月Oracle 收购前的最后一个稳定版
Oracle 收购 Sun2010 年 1 月MySQL 正式归属 Oracle
MySQL 5.5 GA2010 年 12 月Oracle 接管后发布的第一个主要版本

2. 为什么是 MySQL 5.1?

  • 5.1 是 Sun 主导开发的最后一个版本,后续 5.5 由 Oracle 团队接手并优化(如默认启用 InnoDB)。

  • 5.1 的特性(Sun 时代):

    • 分区表(Table Partitioning)

    • 事件调度器(Event Scheduler)

    • 行级复制(Row-Based Replication)

    • 插件式存储引擎架构(但默认引擎仍是 MyISAM)。


3. Oracle 收购后的变化

  1. 默认存储引擎切换:

    • 5.1 默认引擎是 MyISAM,而 5.5+ 改为 InnoDB(Oracle 主导优化)。

  2. 企业版功能增强:

    • Oracle 推出了企业版(如线程池、审计插件等闭源功能)。

  3. 社区分支诞生:

    • 因担心 Oracle 控制,社区创建了 MariaDB(基于 MySQL 5.5 分支发展)。


4. 如何获取原始 Sun 时代的 MySQL?


5. 总结

  • ✅ 最后一个 Sun/社区主导版本:MySQL 5.1.37(2009 年 8 月)。

  • 🔄 Oracle 接管后:从 5.5 开始,InnoDB 成为默认引擎,功能更聚焦企业需求。

  • 🌍 开源替代:若需避免 Oracle 生态,可选择 MariaDB 或 Percona Server。

如果需要研究 纯社区时代的 MySQL 代码,建议下载 5.1.37 或更早版本(如 5.0)。对于现代应用,建议使用 MySQL 8.0+ 或 MariaDB 10.6+。

-------------------------------------------------MySQL 5.1.37 当时支持哪些存储引擎呢-----------------------

MySQL 5.1.37(2009年发布,Sun Microsystems时期的最后一个稳定版本)支持的存储引擎包括以下几种:


1. 默认支持的存储引擎

存储引擎描述是否默认启用主要用途
MyISAM非事务型引擎,高性能读取✅ 默认引擎读密集型应用、数据仓库
InnoDB支持事务、行级锁、外键✅(需手动启用)OLTP、高并发事务
MEMORY (HEAP)内存表,数据不持久化✅临时表、高速缓存
ARCHIVE只支持插入/查询,高压缩比✅日志归档、历史数据
CSV数据以CSV格式存储✅数据交换、简单导入导出
BLACKHOLE写入数据被丢弃,仅记录日志✅复制过滤、性能测试
FEDERATED远程表映射(类似数据库链接)❌(需手动启用)分布式查询

2. 需要手动启用的引擎

存储引擎启用方式用途说明
FEDERATED配置文件中添加 federated 或启动时加 --federated跨服务器数据访问
EXAMPLE仅作为代码示例,无实际功能开发者学习存储引擎API

3. 已废弃或不推荐的引擎

存储引擎状态说明
NDB Cluster需要单独安装集群引擎(不包含在标准MySQL 5.1中)
BDB (BerkeleyDB)已弃用早期事务引擎,5.1后移除

4. 如何查看支持的引擎?

在 MySQL 5.1.37 中执行以下命令:

sql

SHOW ENGINES;

输出示例:

下载

+------------+---------+------------------------------------------------------------+
| Engine     | Support | Comment                                                    |
+------------+---------+------------------------------------------------------------+
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance     |
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys |
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables  |
| CSV        | YES     | CSV storage engine                                         |
| ARCHIVE    | YES     | Archive storage engine                                    |
| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it...)    |
| FEDERATED  | NO      | Federated MySQL storage engine                            |
+------------+---------+------------------------------------------------------------+

5. 引擎选择建议(针对5.1.37)

  1. 事务需求 → 使用 InnoDB(需手动配置为默认引擎)。

  2. 只读/分析型 → MyISAM(默认,但不崩溃安全)。

  3. 临时数据 → MEMORY(重启丢失数据)。

  4. 跨服务器查询 → 启用 FEDERATED(性能较低)。


6. 与后续版本的差异

  • MySQL 5.5+(Oracle时代):

    • InnoDB 成为默认引擎。

    • 移除 BDB,强化 InnoDB 的性能和功能。

  • MariaDB:
    新增 Aria(MyISAM的改进版)、ColumnStore 等引擎。

如果需要研究历史版本的存储引擎设计,MySQL 5.1.37 的 MyISAM/InnoDB 实现是很好的学习材料!

----------------------------------------------补充的摘录信息-----------------------------------------------------------

MySQL 5.1.37 支持多种存储引擎,其中默认的存储引擎是 MyISAM。不过,从 MySQL 5.5 开始,InnoDB 成为了默认的存储引擎。在 MySQL 5.1.37 中,常用的存储引擎包括:

  1. MyISAM:

    • MyISAM 是 MySQL 5.1 及之前的默认存储引擎。

    • 它提供了高速的读写操作,但不支持事务和行级锁。

    • 适用于读多写少的应用场景,如数据仓库和报表系统。

  2. InnoDB:

    • InnoDB 是一个事务型存储引擎,支持 ACID 事务、行级锁和外键约束。

    • 适用于高并发的 OLTP(联机事务处理)系统。

    • 从 MySQL 5.5 开始成为默认存储引擎。

  3. Memory:

    • Memory 存储引擎将所有数据存储在内存中,适用于临时数据的高速存储。

    • 数据在数据库服务器重启后会丢失,因此适合存储临时表或缓存数据。

  4. Archive:

    • Archive 存储引擎用于存储大量 rarely modified 的数据,如日志信息。

    • 它使用行级锁定和数据压缩,适合存储大量小的、非频繁更新的记录。

  5. CSV:

    • CSV 存储引擎将数据存储为逗号分隔的文本文件,便于与外部应用程序交换数据。

  6. Federated:

    • Federated 存储引擎允许访问远程 MySQL 数据库中的表,数据存储在远程服务器上。

    • 适用于分布式数据库环境。

  7. Blackhole:

    • Blackhole 存储引擎会丢弃所有插入的数据,类似于 Linux 中的 /dev/null。

    • 主要用于测试和调试。

  8. Example:

    • Example 存储引擎是一个示例存储引擎,用于演示如何创建新的存储引擎。

这些存储引擎提供了不同的功能和特性,适用于不同的应用场景。在选择存储引擎时,需要根据具体的应用需求来决定。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐