【MySQL_01】简介

MySQL原本是一个开放源码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被昇阳微系统(Sun Microsystems,开发Java的那个)收购。2009年,甲骨文公司(Oracle)收购昇阳微系统公司,MySQL成为Oracle旗下产品(Oracle自家数据库也叫Oracle)。

MySQL:官方发音为/maɪ ˌɛskjuːˈɛl/“My S-Q-L”,但也经常被读作/maɪ ˈsiːkwəl/“My Sequel”。

🐈‍⬛github:https://github.com/mysql

💻官网: https://www.mysql.com

🌏维基百科:https://zh.wikipedia.org/wiki/MySQL

一、发展历史与版本

1.1 历史

  1. 起源与早期发展(1995-2000)

    • 1995年由瑞典开发者 Michael Widenius(Monty)、David AxmarkAllan Larsson 创建,名称取自 Monty 的女儿 “My” 和结构化查询语言 “SQL” 的组合。
    • 目标是为中小型项目提供轻量、开源的关系型数据库,替代昂贵的商业数据库(如 Oracle)。
  2. 开源崛起(2000-2008)

    • 2000年以 GPL 协议 开源,成为 LAMP 技术栈(Linux + Apache + MySQL + PHP/Perl/Python)的核心,推动早期互联网应用(如博客、论坛)的普及。
    • 2001年发布 3.23 版本,首次支持事务处理(通过 Berkeley DB 引擎)。
  3. 商业化与争议(2008-2010)

    • 2008年被 Sun Microsystems 以 10 亿美元收购,2010年随 Sun 被 Oracle 收购,引发开源社区对闭源风险的担忧。
    • 社区分支 MariaDB 诞生(由 Monty 主导),但 MySQL 在 Oracle 管理下持续迭代。
  4. 现代演进(2010-至今)

    • 2018年发布 MySQL 8.0,支持窗口函数、JSON 增强、原子 DDL 等特性。
    • 2020年推出 MySQL HeatWave,整合事务处理(OLTP)与数据分析(OLAP)。
    • 截至 2025年2月,MySQL 长期占据全球数据库流行度 第二名(DB-Engines 数据),市场份额超 40%。
      在这里插入图片描述

MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如:
在这里插入图片描述

但被甲骨文公司收购后,Oracle大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,因此导致自由软件社群们对于Oracle是否还会持续支持MySQL社群版(MySQL之中唯一的免费版本)有所隐忧,MySQL的创始人麦克尔·维德纽斯以MySQL为基础,成立分支计划MariaDB。而原先一些使用MySQL的开源软件逐渐转向MariaDB或其它的数据库。例如维基百科已于2013年正式宣布将从MySQL迁移到MariaDB数据库。

在这里插入图片描述


1.2 版本及分类

MySQL的许可证现在分为免费的社区版与收费的标准版、企业版等。

一般说来,如果在非开源项目中发布了MySQL,或者需要Oracle公司提供对MySQL的技术支持,或者使用MySQL的一些企业版工具或插件,或者修改MySQL源代码并作为闭源的软件等等情形,需要购买商业版本。

如果只是安装并使用MySQL,甚至修改并使用MySQL,无论是否收费;或者软件中不包含MySQL,软件的用户自行安装MySQL;或者使用GPL协议的开源软件产品中包含了MySQL,这些情形可能使用社区版MySQL。


按许可证分类:

版本特点优势适用场景
社区版(Community Edition免费开源,基于 GPL 许可证,适合中小型企业、开发环境。无成本,适合预算有限的项目;社区支持活跃,文档丰富。中小型企业、开发环境、个人项目、教育用途。
企业版(Enterprise Edition)付费版,提供完整功能和技术支持,包含高级工具和服务。包括备份工具、高级安全功能(如数据加密、审计日志)、性能监控和调优工具;官方技术支持。大型企业、高安全性需求场景、关键业务系统。
集群版(Cluster Edition)开源免费,基于 GPL 许可证,支持分布式数据库架构和高可用性。支持高可用性和分布式数据库架构;适合需要横向扩展的场景。需要高可用性和扩展性的场景,如 Web 应用、物联网。
高级集群版(Cluster CGE)需付费,提供高级集群功能和技术支持,基于 MySQL NDB Cluster。提供更强大的集群管理功能、高可用性和实时性能优化;官方技术支持。大型企业、高并发和高可用性需求的场景,如金融、电信。
嵌入式版(Embedded Edition)免费开源,专为嵌入式系统设计,占用资源较少。轻量级,适合资源受限的环境;易于集成到应用程序中。嵌入式系统、IoT 设备、移动应用。
经典版(Classic Edition)旧版 MySQL,基于 MyISAM 存储引擎,现已逐渐淘汰。简单易用,适合传统应用。旧系统维护、传统应用迁移。

主要版本号:

版本发布时间主要特性
MySQL 5.52010年InnoDB 成为默认存储引擎。
MySQL 5.62013年支持全文索引、GTID 复制等。
MySQL 5.72015年支持 JSON 数据类型、性能优化、安全性提升。
MySQL 8.02018年支持 UTF-8mb4 字符集、窗口函数、增强的 JSON 功能。
MySQL 8.42024年4月长期支持版本(LTS)。
MySQL 9.22025年1月最新创新版本( Innovation),带来了大量针对 JavaScript 和存储程序的改进。

衍生版本:

  1. MariaDB

    • 特点:由 MySQL 创始人开发,基于 MySQL 分支,提供更快的查询性能和更多存储引擎支持。
    • 适用场景:关注开源生态的企业。
  2. Percona Server

    • 特点:基于 MySQL 社区版开发,增加了企业级特性,专注于性能和高可用性。

二、特性

  • 使用 C 和 C++ 编写,并使用了多种编译器进行测试,保证源代码的可移植性。
  • 支持 AIX、BSDi、FreeBSD、HP-UX、Linux、Mac OS、Novell NetWare、NetBSD、OpenBSD、OS/2 Wrap、Solaris、Windows 等多种操作系统。
  • 为多种编程语言提供了 API。这些编程语言包括 C、C++、C#、VB.NET、Delphi、Eiffel、Java、Perl、PHP、Python、Ruby 和 Tcl 等。
  • 支持多线程,充分利用 CPU 资源,支持多用户。
  • 优化的 SQL 查询算法,有效地提高查询速度。
  • 既能够作为一个单独的应用程序在客户端服务器网络环境中执行,也能够作为一个程序库而嵌入到其他的软件中。
  • 提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift JIS 等都可以用作数据表名和数据列名。
  • 提供 TCP/IP、ODBC 和 JDBC 等多种数据库连接途径。
  • 提供用于管理、检查、优化数据库操作的管理工具。
  • 可以处理拥有上千万条记录的大型数据库。

三、应用场景与典型案例

  1. 互联网与 Web 服务

    • 全球超 40% 的网站 使用 MySQL(W3Techs 数据),包括 Facebook、Twitter、YouTube(早期架构)。
    • 典型场景:用户认证、内容管理(CMS)、订单处理。
  2. 企业级应用

    • 金融:银行交易流水、支付系统(依赖事务一致性)。
    • 电信:用户计费、通话记录存储。
    • 制造业:ERP 系统、供应链管理。
  3. 嵌入式与物联网

    • 轻量级版本(如 MySQL Embedded Server)用于智能设备、工业传感器数据采集。
  4. 云计算服务

    • AWS RDS阿里云 PolarDB 等云服务基于 MySQL 提供托管数据库。

四、生态系统与工具链

  1. 开源分支与衍生项目

    • MariaDB:完全兼容 MySQL 的社区分支,由 Monty 主导开发。
    • Percona Server:企业级优化版本,集成 XtraBackup 等工具。
  2. 管理与监控工具

    • MySQL Workbench:官方图形化管理工具,支持建模与性能调优。
    • Percona Monitoring and Management (PMM):开源监控平台,提供性能分析。
    • phpMyAdmin:基于 Web 的数据库管理界面。
  3. 开发与运维工具

    • mysqldump:逻辑备份工具。
    • MySQL Shell:支持 JavaScript/Python 脚本的高级客户端。

五、挑战与竞争

  1. 竞争对手

    • PostgreSQL:在复杂查询、JSON 处理、GIS 支持上更具优势。
    • NoSQL(如 MongoDB):灵活的数据模型,适合非结构化数据场景。
    • 云原生数据库(如 AWS Aurora):通过硬件优化争夺高端市场。
  2. 技术挑战

    • 单机性能瓶颈:需依赖分库分表或中间件实现水平扩展。
    • 实时分析能力:传统上依赖外部 OLAP 工具(如 Apache Spark)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

感谢地心引力

有用的话请我喝杯咖啡吧????

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值