【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

相关推荐
NineData31 分钟前
数据库迁移总踩坑?用 NineData 迁移评估,提前识别所有兼容性风险
数据库·程序员·云计算
赵渝强老师3 小时前
【赵渝强老师】PostgreSQL中表的碎片
数据库·postgresql
全栈老石7 小时前
拆解低代码引擎核心:元数据驱动的"万能表"架构
数据库·低代码
倔强的石头_1 天前
kingbase备份与恢复实战(二)—— sys_dump库级逻辑备份与恢复(Windows详细步骤)
数据库
jiayou642 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北2 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤3 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12024 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区4 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1774 天前
《从零搭建NestJS项目》
数据库·typescript