# 软考-软件设计师-4-数据库基础

# 主要概念

模式 描述
外模式 用户可看到的,数据库的接口
概念模式 只有一个,全部数据的逻辑结构
内模式 只有一个,具体的存储方式,索引、文件

# 数据库设计流程

设计阶段 设计成果
需求分析 需求规格说明书、数据字典
概念设计 概念模型、ER 图
逻辑设计 逻辑模式,关系模式
物理设计 物理模型

# 事务的特点

  • 原子性 Atomicity:要么全做,要么全不做
  • 一致性 Consistency:从一个一致性状态到另一个一致性状态
  • 隔离性 Isolation:事务之间完全独立,不互相影响
  • 持久性 Durability:事务一但提交,改变就是永久的

# 冲突

冲突 说明
属性冲突 同一属性使用的单位不同,取值范围不同
结构冲突 同一结构在不同的使用场景中意义不同
命名冲突 同一名字,不同含义

# 范式

名称 描述
1 NF 每个属性都不可再分
2 NF 每个非主属性完全依赖主键
3 NF 每个非主属性之间无逻辑关系

#

描述
排他锁 X 锁,只允许一个事务获得 X 锁
共享锁 S 锁,允许并发读,写需要再申请 X 锁

# 更新丢失

T1 T2
R
R
W
W

# 脏读

T1 T2
RW
R
roolback

# 不可重复读

T1 T2
R
RW
R
封锁协议 操作 解决问题
一级 写前加 X 锁 更新丢失
二级 写前加 X 锁,读前加 S 锁,读完释放 S 锁 更新丢失、脏读
三级 写前加 X 锁,读前加 S 锁,事务结束释放 S 锁 更新丢失、脏读、不可重复读

MySQL 使用二级封锁协议

最后更新于: 1/29/2023, 10:35:51 PM