MySQL · 简介

全球数据库排行

MySQL

发展历史

  • 1979年,Monty 写了最初的版本
  • 1996年,发布 1.0 版本
  • 1999年,MySQL AB 在瑞典正式宣布成立
  • 2000年4月,集成 MyISAM 和 Replication
  • 2003年,MySQL4.0 发布,正式集成 InnoDB
  • 2005年,发布 5.0 版本(提供了视图、存储过程等功能)
  • 2006年,MySQL 被 Sun 收购,出价 10 亿美元
  • 2009年,Oracle 公司收购 Sun,将 MySQL 纳入囊中
  • 2010年12月,发布 5.5 正式版本,InnoDB 改为默认存储引擎
  • 2013年2月,发布 5.6 正式版本
  • 2015年10月,发布 5.7 正式版本
  • 2018年5月,发布 8.0 正式版本

优缺点

优点

  • 免费
  • 开源(源码、社区工具丰富)
  • 简单(部署简单、门槛低、上手快)

缺点

  • 优化器对复杂 SQL 支持不好
  • 大规模集群方案不成熟,主要指中间件
  • 备份和恢复方案还是比较复杂,需要依赖外部组件
  • 缺少分库分表解决方案

行业应用

主流分支

基本概念

  • 数据库:就是一个存储结构化数据的仓库。物理操作系统文件或其他形式文件类型的集合,通常来说存在与文件系统之上。

  • 关系型数据库:是创建在关系模型基础上的数据库,典型代表有:MySQL、Oracle、Microsoft SQL Server、PostgreSQL 等。

  • 非关系型数据库(NoSQL):对不同于传统的关系数据库的数据库管理系统的统称。与关系数据库最大的不同点是不使用SQL作为查询语言。 典型代表有:Redis、MongoDB 等。

  • 实例:MySQL 数据库由后台线程以及一个共享内存区组成。数据库实例才是真正用于操作数据库文件的。MySQL 数据库实例在系统上的表现就是一个进程。

  • :本质是一个文件夹。

  • :本质就是一个文件。

  • 记录:相当于文件中的一行。

  • 存储引擎:可以理解成文件系统,存储引擎的对象就是表。

  • OLAP:On-Line Transaction Processing,联机事务处理。

  • OLTP:On-Line Analytical Processing,联机分析处理。

  • DML:数据操作语言,主要是用来对数据进行一些操作,如 SELECT、UPDATE、INSERT、DELETE 等。

  • DDL:数据定义语言,主要是用在定义或改变表的结构,如 CTEATE、ALTER、DROP、TRUNCATE 等。

学习资料