写在前面
基于王珊,萨师煊版《数据库系统概论》
数据
描述事物的符号记录称为数据,是数据库存储的基本对象。数据与语义不可分。
DBMS
数据库管理系统是计算机的基础软件,是位于用户和操作系统之间的一层数据管理软件。
DBMS的基本功能
1.数据定义 2.数据组织和存储管理 3.数据操纵 4.数据库事务管理与运行管理 5.数据库建立与维护 6.其他(通信、数据转换、互访)
DBMS的保护功能
安全性保护、完整性检查、并发控制、数据库恢复
三级模式
逻辑模式(全体数据逻辑结构特征描述,所有用户公共数据视图)
外模式(子模式、用户模式):用户能看见和使用的局部数据逻辑结构和特征描述,是数据库的用户视图,是与某一应用有关数据的逻辑表示。
内模式:存储模式。一个数据库只有一个内模式,是数据物理结构、存储方式描述。是数据在数据库内部组织方式。
客户端/服务端体系结构
硬件平台及数据库、软件、人员。
联系的类型判断
实体之间的联系通常是不同实体集之间的联系。有一对一、一对多、多对多等类型。
数据库特点
长期存储在计算机内、有组织、可共享大量数据集合。
按一定数据模型组织、描述、存储。冗余度小、数据独立性高、易扩展、可为各种用户共享。
数据库系统特点
数据结构化
数据共享性高、冗余度低
数据独立性高
数据由DBMS统一管理控制
逻辑独立性
逻辑独立性指用户应用程序与数据库逻辑结构相互独立
数据独立性由数据库管理系统提供的二级映像、功能保证
当模式改变时,由数据库管理员对各个外模式/模式映像作相应改变,使外模式保持不变、应用程序依据数据外模式编写。应用程序不必修改,保证数据
与程序逻辑独立性。简称数据的逻辑独立性
概念模型
也称信息模型,按用户观点对数据进行信息建模。用于数据库设计。
信息世界的基本概念:
1.实体:客观存在并相互区别
2.属性
3.码:唯一标识实体的属性集
4.实体型:用实体名、属性名抽象刻画同类实体
5.实体集:同一类型实体集合
6.联系:不同实体集联系
主键
某一属性组的值能唯一标识一个元组而其子集不能,则该属性集为候选码。若有多个候选码,则选一个为主码。
外键
设F FF是基本关系R RR的一个或一组属性,但不是关系R RR的码。k s k_sks是基本关系S SS的主码。如果F FF与k s k_sks对应,则称F FF是R RR的外码,并称基本关系R RR为参照关系,基本关系S SS称为被参照关系。
关系模型、关系模式、关系
背下来!!!!!!!!!!!!!!!!!!!!!!!
关系模型:用二维表的形式表示实体和实体间联系的数据模型
关系代数传统集合运算
并、差、交、笛卡尔积
视图
虚表,从一个或多个基本表(视图)导出的类。
grant、revoke
grant向用户授予权限,erevoke收回权限。
实体完整性
用keykey定义
检查主码是否唯一,不唯一则拒绝插入/修改
数据完整性
用户定义的完整性
属性约束条件可为nullnull或unique或check表达式
元组约束条件,可设置不同属性取值间关系
主属性
包含在任何一个候选码的属性为主属性
存储过程
存储过程是存放在服务器上预先编译好的一组完成特定功能的T − S Q L T-SQLT−SQL语句集
使用存储过程可减少网络数据流量,增加代码重用性、共享性
加快系统运行速度、提高数据安全性,方便实施企业规则
触发器
数据字典
数据项:不可再分的数据单位
数据结构:数据之间的组合关系
数据流:数据结构在系统内传输路径
数据存储:数据结构停留保存地方,数据流来源去向之一
处理过程
数据字典是关于数据库中数据的描述,即元数据,而非数据本身
数据字典在需求分析阶段建立,在设计阶段被修改、充实、完善。
存取控制
包括定义用户权限和合法权限检查两部分。
自主存取控制:可以自定义用户权限
强制存取控制:每个数据被标以密级,用户被授予某一许可证
客体重用、标记
海量备份、增量备份
海量转储:每次转储全部数据库
增量存储:每次转储上一次转储后更新过的数据
数据库恢复基本原理
冗余
数据库恢复涉及到的冗余数据
后备副本、日志文件
检查点机制
在日志文件中加入检查点记录,增加一个重新开始文件,让恢复子系统在登录日志文件期间动态维护日志。
检查点记录建立检查点时刻所有正在执行的事务清单,这些事务最近一个日志地址。
数据库镜像
自动把整个数据库或其中的关键数据复制到另一个磁盘上,每当主数据库更新时,DBMS自动把更新后的数据复制过去,由DBMS自动保证镜像与主数据库一致性。
commit/rollback
commit:提交事务所有操作,把事务对数据库更新写回磁盘的物理数据库中
rollback:回滚,系统将事务中对数据库所有已完成的操作撤销,回滚到事务开始时状态。
可串行化调度
定义:多个事务并发执行是正确的,当且仅当其结果与按某一次序串行执行这些事务时结果相同。
可串行性是并发实物正确调度准则。
冲突:不同事务对同一数据的读写和写写。
不同事务冲突操作与同一事务两个操作不能交换。
一个调度交换两个事务不冲突得到Sc′,若Sc′可串行,则'Sc′冲突可串行化。
两段锁
在对任何数据读写前,要申请并获得对该数据封锁
在释放一个封锁后,不再申请获得任何其他锁。
扩展阶段申请获得锁,收缩阶段只能释放锁
是可串行化的充分条件。