数据库系统与数据模型

第二章:数据库系统基础

2.1 核心概念关系图

image-3f9b0e95 image-c6dfc38f

2.2 四个核心概念详解

概念 全称 定义 举例
DB DataBase(数据库) 按一定组织方式存储的、相互关联的数据集合 school数据库、shop数据库
DBMS DataBase Management System(数据库管理系统) 组织、存储、维护和获取数据的软件 MySQL、Oracle、PostgreSQL、Access 、SQL Sever
DBAS DataBase Application System(数据库应用系统) 基于数据库建立的应用程序 财务系统、图书管理系统
DBS DataBase System(数据库系统) 实现有组织地、动态地存储大量关联数据、方便用户使用的计算机软硬件资源组成的系统 整个数据库运行环境

2.2.1 概念之间的关系

image-79b50f80 image-e49bb65e

DBS = DB + DBMS + DBAS + 硬件 + 人员 + 规程

层次关系

  • DB 是数据存储的物理集合
  • DBMS 是管理 DB 的软件
  • DBAS 是基于 DBMS 开发的应用
  • DBS 是包含以上所有及相关资源的完整系统

2.3 数据库(DB)的特点

特点 说明
数据结构化 数据按照数据模型组织,不是杂乱无章的
数据共享 多个用户、多个应用可以共享同一数据库
冗余度低 避免数据的重复存储
独立性高 数据与程序相互独立
统一管理 由 DBMS 统一管理和控制

2.4 数据库管理系统(DBMS)

2.4.1 DBMS 的定义与地位

DBMS 是位于用户与操作系统之间的一层数据管理软件

image-bcec17a0

2.4.2 DBMS 的主要功能

功能类别 具体功能
数据定义 提供DDL(数据定义语言),定义数据库结构
数据操纵 提供DML(数据操纵语言),实现增删改查
数据控制 提供DCL(数据控制语言),实现安全性、完整性控制
数据库运行管理 并发控制、事务管理、数据恢复
数据库建立和维护 数据库初始化、备份恢复、性能监控

2.4.3 SQL 语言分类

分类 全称 功能 主要语句
DDL Data Definition Language 定义数据库结构 CREATE、ALTER、DROP、TRUNCATE
DML Data Manipulation Language 操作数据 SELECT、INSERT、UPDATE、DELETE
DCL Data Control Language 控制权限 GRANT、REVOKE
TCL Transaction Control Language 事务控制 COMMIT、ROLLBACK、SAVEPOINT

2.3.2 常见数据库产品对比

数据库 类型 特点 适用场景
MySQL 关系型/开源 免费、轻量、易用 Web应用、中小型系统
Oracle 关系型/商业 功能强大、稳定性高 大型企业、金融系统
SQL Server 关系型/商业 与Windows集成好 企业应用、.NET开发
PostgreSQL 关系型/开源 功能丰富、标准兼容 复杂查询、GIS应用
MongoDB 文档型/NoSQL 灵活模式、易扩展 内容管理、大数据
Redis 键值型/NoSQL 内存存储、速度极快 缓存、会话管理

2.5 数据库系统(DBS)的组成

2.5.1 五大组成部分

一个完整的 DBS 包含五部分:

  1. 硬件: 主要是服务器、大容量磁盘(RAID)、高带宽网络。
  2. 软件: DBMS、OS、开发工具、应用系统。
  3. 数据: DB 本身。
  4. 人员(核心):
    • DBA (数据库管理员): 负责建库、授权、备份、调优。(最高权限)
    • 系统分析员/设计员: 设计数据库结构。
    • 应用程序员: 写代码调用数据库。
    • 最终用户: 使用系统的人。
  5. 规程/协议: 也就是使用的标准和规范。
image-77c38e38

2.5.2 人员角色详解

角色 职责 技能要求
DBA 数据库设计、安装配置、性能调优、安全管理、备份恢复 精通DBMS、熟悉操作系统
应用程序员 开发数据库应用程序、编写SQL语句、设计程序逻辑 编程语言、SQL、数据库设计
最终用户 通过应用程序使用数据库 无需专业知识

DBA 的主要职责

  1. 决定数据库的信息内容和结构
  2. 决定数据库的存储结构和存取策略
  3. 定义数据的安全性要求和完整性约束
  4. 监控数据库的使用和运行
  5. 数据库的改进和重组

2.6 MySQL 系统数据库

💡 MySQL 安装后会自动创建 4个系统数据库

2.6.1 MySQL 四大系统数据库详解

-- 查看所有数据库
SHOW DATABASES;

-- 结果:
-- +------------------------+
-- | Database                     |
-- +------------------------+
-- | information_schema   |
-- | mysql                          |
-- | performance_schema |
-- | sys                               |
-- +---------------- -------+
image-2962122f
系统数据库 作用
mysql MySQL的核心数据库,存储用户账号、权限、系统配置等信息。相当于SQL Server的Master库
information_schema 存储所有数据库的元数据(表结构、列信息、索引等),只读虚拟库
performance_schema 存储服务器性能监控数据,用于分析和调优
sys 基于 performance_schema 和 information_schema 的简化视图,方便DBA使用
image-245d6312

2.6.2 与 SQL Server 系统数据库对比

功能 SQL Server MySQL
核心系统信息 Master mysql
新建库模板 Model (MySQL无此概念)
代理任务调度 Msdb (MySQL通过Event Scheduler实现)
临时数据存储 Tempdb (MySQL使用内部临时表机制)
元数据信息 各系统表 information_schema
性能监控 DMV performance_schema

第三章:数据模型基础

💡 数据模型是数据库理论的核心概念,是对现实世界数据特征的抽象

本章定位:简要介绍数据模型的基本概念和分类,为后续数据库设计章节奠定基础

3.1 什么是数据模型

定义:数据模型是对现实世界数据特征的抽象,是用来描述数据、组织数据和对数据进行操作的。

作用

  • 是数据库系统的核心和基础
  • 决定了 DBMS 的数据组织方式
  • 影响数据库设计方法

3.2 数据模型的三要素

要素 说明 举例
数据结构 描述数据的类型、内容、性质以及数据间的联系 实体、属性、关系
数据操作 对数据的各种操作 查询、更新(增删改)
数据约束 数据及其联系应遵守的规则 完整性约束

3.3 数据模型的分类

image-9f109910
模型类型 面向对象 作用 示例
概念模型 用户 描述现实世界的概念 E-R模型
逻辑模型 DBMS 描述数据的逻辑结构 层次模型、网状模型、关系模型
物理模型 存储系统 描述数据的物理存储 索引、存储结构、文件组织

3.4 三种传统逻辑模型对比

image-1ddb992f

(1)层次模型:树状结构

image-40d636e0

(2)网状模型:网状结构

image-9d13369e

(3)关系模型:二维表结构

image-687ac9f7

三种模型对比表

特性 层次模型 网状模型 关系模型
数据结构 二维表
联系表示 1:N M:N M:N
结构复杂度
理论基础 强(关系代数)
代表系统 IMS DBTG MySQL、Oracle

关系模型是目前主流的数据模型,其详细内容将在第五章数据库设计中深入讲解


⬅️ 数据库的管理技术及其发展 🏠 00-数据库 ➡️ 三级模式与二级映射