一起来了解mysql数据库
一、数据库是什么?
数据库是管理数据的一类软件。对数据的管理体现在两个方面,第一是描述数据,即一条数据如何表示,第二是组织数据,即很多数据如何管理。
数据库的主要目的是实现对数据的增删改查。
二、数据库的分类?
数据库主要分为关系型数据库和分关系型数据库。
关系型数据库 | 非关系型数据库 | |
对数据的要求 | 数据规范统一 | 不要求数据规范统一 |
组织数据的形式 | 表 | 文档/键值对 |
具体如何组织 | 同类的数据放到一个表中 表中的每一行是一条记录 每一条记录包含很多列,要求这些列的类型和含义统一 |
每条记录都是一个文档,每个文档中的属性和字段都不要求相同 |
优点 | 对数据的校验更加严格 | 对数据校验不那么严格,但是更高效,更适合于现在的分布式系统。 |
典型代表 | Oracle,MySQL,SQL Server | MangoDB,Redis,HBase |
三、数据库和数据结构的区别
数据结构:是一门抽象的学科,研究的是数据的逻辑结构和数据的物理结构以及它们之间的相互关系,并对这种结构定义相适应的运算,设计出相应的算法
数据库:是一类更具体的软件,在实现这个软件的过程中用到很多数据结构。
很多软件实现增删改查都需要用到数据结构,数据库只是其中的一个应用场景。
四、MySQL数据库的介绍
4.1 MySQL数据库的组成
MySQL数据库是一个“客户端-服务器”程序,客户端是主动发起请求的一方,客户端发送的数据称为请求(request),服务器是被动接受请求的一方,服务器返回的数据称为响应(response),客户端和服务器之间通过网络来进行通信。
在安装MySQL数据库时,可以将客户端和服务器安装在同一台主机上,也可以将其分别安装不同主机上。在实际情况中,同一台服务器,可以为多个客户端提供服务。
MySQL客户端 | 是一个非常简单的程序,仅仅用来和用户交互。(数据库编程,指的是实现一个客户端,与服务器没关系) |
MySQL服务器 | 是数据库的本体,MySQL数据库将数据存储在服务器上。 |
主流的MySQL版本:MySQL5系列、MySQL8系列。
4.2 MySQL服务器的介绍
MySQL服务器上包含若干个数据库,每个数据库都是一组数据表逻辑上的集合(将有关联的表放在一起)。
服务器:包含多个数据库
数据库:包含多个表
表:包含多行,每行是一条记录
行:包含多列,每列是一个字段
4.3 MySQL数据库的数据存储位置
很多数据库将数据存储在外存中,如MySQL、Oracle等,少部分数据库将数据存储在内存中,如Redis。
MySQL将数据存储在硬盘。原因如下:
首先,先了解内存和硬盘的区别:
内存的空间少,硬盘的空间大;内存比硬盘价格更贵;如果掉电,内存上的数据会丢失,硬盘上的数据不会丢失。
数据库存储数据的要求:容量大,因为数据量很大;期望有更低的成本;期望掉电后数据不丢失,能够持久化存储;硬盘与内存相比,完全符合这些要求,所以选择硬盘来存储数据。
如果存储的数据量很大,可以选择使用一下方法:
①多加几个硬盘
②使用多台机器存储,MySQL的分库分表。
总结
首先,介绍了数据库的分类,分为结构型数据库和非结构型数据库两类。其次,介绍了MySQL数据库的组成,即MySQL由客户端和服务器组成,服务器是MySQL的主体。最后,介绍了MySQL服务器是将数据存储在硬盘上,原因为硬盘容量大、便宜和能实现持久化存储。