【MySQL】(1) 数据库基础

一、什么是数据库

数据库自行选择了合适的数据结构来组织数据,方便用户写入存储介质 ,如硬盘,机器断电不会丢失数据)和查询数据。在数据结构部分,我们讲到的 ArrayList、HashMap 集合类对象 也能存储数据,不同的是数据存储在内存中,机器断电就会丢失数据。

二、主流数据库

1、关系型数据库

  • Oracle:甲骨文旗下,功能最强的数据库,但是收费,很多大公司用。
  • MySQL:开源免费,很多中小型公司用,像阿里巴巴这种大公司使用的是根据自己的业务需求魔改后的 MySQL。一开始 SUM(也就是 Java)收购了MySQL,后面 Oracle 收购了 SUM,所以现在 MySQL 也是在甲骨文旗下的。
  • SQL Sever:微软旗下,很多学校教学用。
  • SQLite:轻量型数据库,常在嵌入式设备、手机APP、桌面应用等中使用。

2、非关系型数据库

  • Redis:基于键值对的数据库,常用作缓存。
  • MongoDB:文档型数据库。

3、什么是关系型数据库

就是采用关系模型(二维表)组织数据 ,一个关系型数据库就是由二维表之间的关系组成的数据组织

为什么要使用多个关系模型,并建立它们之间的关系?直接用一张表存储所有数据行不好吗?比如下面有两张表:

想改名尖子1班为清北班,那么只需要更改班级表中的第一栏。

和为一张表后:

想改名尖子1班为清北班,就需要更改所有是尖子1班的学生信息。显然,这种更改效率极低。

三、数据库服务器、数据库、表之间的关系

四、客户端与服务器的通讯方式

1、C/S(客户端/服务器)

为固定用户群体提供服务,如 QQ、微信等。

2、B/S(浏览器/服务器)

为公开用户提供服务,如各大网站:

五、SQL 简介

SQL 就是结构化查询语言 的简称,用于存取、查询、更新、数据,管理数据库

SQL 分类:

  • DDL:数据定义语言,数据库级别。与开发强相关。
  • DML:数据操纵语言,数据行级别。与开发强相关。
  • DCL:数据控制语言,管理权限和事务。数据库管理员负责。

六、MySQL 架构

  • 外部程序:不同类型的客户端程序,如命令行工具、应用程序。
  • 连接层:允许不同的客户端通过协议连接 MySQL 服务器。进行身份验证,有授权的才能连接;并处理并发连接。
  • 服务层:SQL 解析器,将 SQL 语句解析为指令;查询优化器选择最优查询路线,提高查询效率;管理查询缓存,常访问的数据存入缓存,提高访问效率。
  • 存储引擎层:不同的存储引擎使用了不同的数据结构,具有不同的特点,适用不同的场景。MySQL 5.5 及以后版本默认 InnoDB,它支持事务。
  • 文件系统层:存储数据文件。

查询服务器支持哪些存储引擎,SHOW ENGINES

相关推荐
xxwl5854 分钟前
数据库后端接口测试报告
spring boot·mysql·tomcat
xqqxqxxq31 分钟前
MySQL 数据类型笔记
数据库·笔记·mysql
Logintern091 小时前
理解MySQL数据库的“事务与锁”
数据库·mysql
朱容zr3331331 小时前
为什么推荐使用自增主键?使用UUID作为主键的优缺点是什么?
java·运维·数据库·后端·mysql·面试·性能优化
麻瓜code1 小时前
【Redis 】数据类型、持久化与过期删除
数据库·redis·缓存
空杆推不起1 小时前
穿透 Flink CDC 表层用法:数据库日志捕获机制、Flink Source 运行时、端到端一致性底层原理详解
大数据·数据库·flink
朱容zr3331332 小时前
请解释“回表”的概念。
java·前端·数据库
大黄说说2 小时前
EF Core 避坑指南:查询慢、循环查询、并发更新问题如何解决
java·服务器·数据库
城管不管2 小时前
重生——第五次面试2026.8.1一面
java·数据库·后端·ai·面试·职场和发展·agent
ocean'2 小时前
防火墙策略路由
linux·服务器·数据库