mysql被oracle 收购之前的最后一个版本是多少
MySQL 被 Oracle 收购前的最后一个独立社区版本是 MySQL 5.1(具体为 MySQL 5.1.37,发布于 2009 年 8 月),而 Oracle 收购 Sun Microsystems(MySQL 母公司)的时间是 2010 年 1 月。以下是关键时间线:
1. 关键版本与时间节点
| 版本 | 发布时间 | 说明 |
|---|---|---|
| MySQL 5.1 GA | 2008 年 11 月 | Sun Microsystems 发布的最后一个主要版本 |
| MySQL 5.1.37 | 2009 年 8 月 | Oracle 收购前的最后一个稳定版 |
| Oracle 收购 Sun | 2010 年 1 月 | MySQL 正式归属 Oracle |
| MySQL 5.5 GA | 2010 年 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 收购后的变化
-
默认存储引擎切换:
-
5.1 默认引擎是 MyISAM,而 5.5+ 改为 InnoDB(Oracle 主导优化)。
-
-
企业版功能增强:
-
Oracle 推出了企业版(如线程池、审计插件等闭源功能)。
-
-
社区分支诞生:
-
因担心 Oracle 控制,社区创建了 MariaDB(基于 MySQL 5.5 分支发展)。
-
4. 如何获取原始 Sun 时代的 MySQL?
-
官方存档:
MySQL 5.1.37 下载页面(Oracle 官网)(仍可下载,但无官方维护)。 -
历史镜像:
部分开源镜像站保留 Sun 时代的版本(如 OSDN)。
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)
-
事务需求 → 使用 InnoDB(需手动配置为默认引擎)。
-
只读/分析型 → MyISAM(默认,但不崩溃安全)。
-
临时数据 → MEMORY(重启丢失数据)。
-
跨服务器查询 → 启用 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 中,常用的存储引擎包括:
-
MyISAM:
-
MyISAM 是 MySQL 5.1 及之前的默认存储引擎。
-
它提供了高速的读写操作,但不支持事务和行级锁。
-
适用于读多写少的应用场景,如数据仓库和报表系统。
-
-
InnoDB:
-
InnoDB 是一个事务型存储引擎,支持 ACID 事务、行级锁和外键约束。
-
适用于高并发的 OLTP(联机事务处理)系统。
-
从 MySQL 5.5 开始成为默认存储引擎。
-
-
Memory:
-
Memory 存储引擎将所有数据存储在内存中,适用于临时数据的高速存储。
-
数据在数据库服务器重启后会丢失,因此适合存储临时表或缓存数据。
-
-
Archive:
-
Archive 存储引擎用于存储大量 rarely modified 的数据,如日志信息。
-
它使用行级锁定和数据压缩,适合存储大量小的、非频繁更新的记录。
-
-
CSV:
-
CSV 存储引擎将数据存储为逗号分隔的文本文件,便于与外部应用程序交换数据。
-
-
Federated:
-
Federated 存储引擎允许访问远程 MySQL 数据库中的表,数据存储在远程服务器上。
-
适用于分布式数据库环境。
-
-
Blackhole:
-
Blackhole 存储引擎会丢弃所有插入的数据,类似于 Linux 中的
/dev/null。 -
主要用于测试和调试。
-
-
Example:
-
Example 存储引擎是一个示例存储引擎,用于演示如何创建新的存储引擎。
-
这些存储引擎提供了不同的功能和特性,适用于不同的应用场景。在选择存储引擎时,需要根据具体的应用需求来决定。
更多推荐

所有评论(0)