基于上篇数据库如何工作的基础之上,我们再来梳理下数据库系统中有哪些重要的知识点,包括:事务,并发一致性,封锁,隔离级别,多版本并发控制等。
一、事务
概念
事务指的是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚。

基于上篇数据库如何工作的基础之上,我们再来梳理下数据库系统中有哪些重要的知识点,包括:事务,并发一致性,封锁,隔离级别,多版本并发控制等。
事务指的是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚。

在上文知道如何设计表和健后,让我们再看看整个的数据库设计的标准流程吧,主要包括
需求分析,概念结构设计,逻辑结构设计,物理设计,实施阶段和运行和维护阶段这6个阶段,其中最重要的是逻辑结构设计。
按照规范设计的方法,考虑数据库及其应用系统开发全过程,将数据库设计分为以下6个阶段
在上文了解数据库如何工作后,本节介绍如何将一个关系模型(基于表的数据模型)合理的转化为数据表和关系表,以及确定主外键的。这便是数据库设计理论基础,包括术语,函数依赖,范式等理论基础。
关系模型是一种基于表的数据模型,以下为关系学生信息,该表有很多不足之处,本文研究内容就是如何改进它:

很多人在学习数据库时都是孤立的学习知识点,这样是很难将所有知识点串起来深入理解;强烈推荐你学习两篇文章:Architecture of a Database System在新窗口打开以及How does a relational database work在新窗口打开;本文主要在第二篇基础上翻译并梳理,如果你英文不好的话,可以通过本文帮助你构筑数据库体系的基础。再啰嗦下,这篇文章关注的不是知识点,而是知识点之间的关联。
本系列从「关系模型 → 存储与索引 → 事务与并发 → 日志与恢复」这条主线出发,梳理数据库原理的公共底座,再向 SQL 语言、MySQL 实现等方向展开。本文作为
db区的入口,先给出整体地图与核心结论,细节再按需下钻到各专题。
会用 SELECT 和能写高效的 SELECT 之间,隔着一整套数据库内部机制。只背语法的人,遇到下面这些现象往往只能靠猜: