Mysql简介
MySQL是最流行的开源关系SQL数据库管理系统。MySQL是用于开发各种基于Web的软件应用程序的最佳RDBMS之一。MySQL由瑞典公司MySQL AB开发,但后来被Sun和Oracle公司收购,现在由Oracle公司、MariaDB公司、Percona公司销售和支持。
什么是数据库?
数据库是存储数据集合的独立应用程序。每个数据库都有一个或多个不同的API,用于创建,访问,管理,搜索和复制其所保存的数据。
也可以使用其他类型的数据存储,例如文件系统上的文件或内存中的大型哈希表,但是使用这些类型的系统,数据的获取和写入将不那么快捷,容易。
如今,我们使用关系型数据库管理系统(RDBMS:Relational Database Management System)来存储和管理大量数据。之所以称为关系型数据库,是因为所有数据都存储在不同的表中,并且使用主键或称为外键的其他键来建立关系。
关系型数据库管理系统(RDBMS)是一种软件:
- 使我们能够使用表,列和索引来实现数据库。
- 确保各种表的行之间的引用完整性。
- 自动更新索引。
- 解释SQL查询并合并来自各个表的信息。
除了RDBMS关系型数据库(MySQL、Oracle、Microsoft SQL Server、PostgreSQL),我们经常使用的还有NOSQL非关系数据库(MongoDB、Redis、Elasticsearch)。
下面推荐一个网站,可以了解数据库的搜索排名:db-engines.com。
当然,还有云数据库产品(RDS、PolarDB、TDSQL)以及NewSQL(TiDB)。
RDBMS术语
下列是一些与数据库有关的定义:
-
数据库:数据库是具有相关数据的表的集合。
-
表:表是包含数据的矩阵。数据库中的表看起来像一个简单的电子表格。
-
列:一列(数据元素)包含一种相同类型的数据,例如一列邮政编码。
-
行:行(=元组,条目或记录)是一组相关数据,例如一个账户的账号密码等数据。
-
冗余:两次存储数据,以提高系统速度。
-
主键:主键是唯一的。一个表中的键值不能出现两次。使用密钥,您只能找到一行。
-
外键:外键是两个表之间的连接桥。
-
复合键:复合键是由多列组成的键,因为一列不够唯一。
-
索引:数据库中的索引类似于书后部的索引。
-
引用完整性:引用完整性可确保外键值始终指向现有行。
MySQL数据库
MySQL是一种快速,易于使用的RDBMS,可用于许多大小企业。由于许多原因,MySQL变得如此流行:
-
MySQL是在开源许可证下发布的。因此,您无需付费即可使用它。
-
MySQL本身就是一个非常强大的程序。它处理最昂贵,功能最强大的数据库程序包的大部分功能。
-
MySQL使用众所周知的SQL数据语言的标准形式。
-
MySQL可在许多操作系统上运行,并支持多种语言,包括PHP,PERL,C,C ++,JAVA等。
-
MySQL可以非常快速地运行,并且即使对于大型数据集也可以很好地运行。
-
MySQL支持大型数据库,一个表中多达5000万行或更多。表的默认文件大小限制为4GB,但您可以将其增加(如果操作系统可以处理),理论上可以达到800万兆字节(TB)。
-
MySQL是可定制的。开源GPL许可证允许程序员修改MySQL软件以适合他们自己的特定环境。
目前MySQL版本选择
当MySQL版本有存在问题,有bug时,处理方式为升级新的稳定版本。
MySQL行业主流版本
- 5.6:5.636,5.638,5.640,5.646 (5.6版本据说不再更新了)
- 5.7:5.720,5.722,5.724,5.726,5.728
- 8.0(现在开始研究新特性):8.011,8.017,8.018
最好选择5.7或者8.0的版本,其中最好选择黄色标记的版本:
1.一般选择官方主流版本
2.GA(稳定发布版)
3.6-12月的产品版本
企业版MySQL分支:
- Oracle:
MySQL官方版 - 红帽 :
MariaDB - Percona:
PerconaDB
安装选择
- 企业版:Enterprise , 互联网行业一般不选择.
- 社区版本:选择
- Linux下安装方式:
源码包:source code,编译安装,非常慢,一般用于研究源码(C/C++)
rpm安装包,yum安装:下载rpm包或者配置yum源(点我查看安装)
通用二进制:解压安装(点我查看安装)