MySQL:数据库基础

发布于:2025-03-20 ⋅ 阅读:(15) ⋅ 点赞:(0)

1.什么是数据库?

数据库(Database,简称DB),长期存放在计算机内,有组织,可共享的大量数据的集合,是一个数据"仓库"。用来存放管理数据。

2.为什么要学习数据库?

看了数据库的介绍,好像跟文件差不多?存储数据用文件不是也一样吗? 文件有一些缺点:

  • 安全性问题无法保证
  • 不利于数据的查询和管理
  • 不利于存储海量的数据
  • 文件在程序中控制不方便

当然了文件的这些缺点就是数据库的优点所在了。

3.主流的数据库(了解)

• SQL Sever:微软的产品,.Net程序员的最爱,中大型项目。
• Oracle:甲骨文产品,适合大型项目,复杂的业务逻辑,并发一般来说不如MySQL。
• MySQL:世界上最受欢迎的数据库,属于甲骨文,并发性好,不适合做复杂的业务。主要用在电商,SNS,论坛。对简单的SQL处理效果好。
• PostgreSQL:加州大学伯克利分校计算机系开发的关系型数据库,不管是私用,商用,还是学术研究使用,可以免费使用,修改和分发。
• SQLite:是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。
• H2:是一个用Java开发的嵌入式数据库,它本身只是一个类库,可以直接嵌入到应用项目中。

4.服务器,数据库,表之间的关系

在这里插入图片描述

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。

为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

5.数据的逻辑存储

在这里插入图片描述
基本上数据就是按照行与列的方式进行储存的。

6.MYSQL架构

在这里插入图片描述

MYSQL的架构一共为四层 分别是:
1.连接层:负责处理客户端接入,像用户登录、授权、连接管理等都在此进行。
2.服务层:是核心层,包含诸多关键功能模块。SQL 接口接收客户端 SQL 命令并返回结果;解析器对 SQL 进行词法和语法分析等待
3.引擎层:决定表数据的读写和存储方式,是较为重要的一层。服务层制定执行计划后,由引擎层执行具体的数据读写操作。
4.存储层:为上层服务提供基础文件服务,存储着日志、数据、索引等文件,与引擎层交互,是数据的物理存储基础

7.存储引擎

在这里插入图片描述
在这里插入图片描述
我们一般就使用两个。