• 数据库系统概率复习笔记(简略)


    一、绪论

    数据:数据库中存储的基本对象,描述事物的符号记录称为数据。
    数据库:长期存储在计算机中,大量数据的集合。
    数据库管理系统:位于用户和操作系统之间的一层数据管理软件。

    数据独立性:
    物理独立性,逻辑独立性

    人工管理阶段:冗余度极大,无共享性
    系统管理阶段:冗余度大,共享性差
    数据库管理阶段:冗余度小,共享性强

    数据模型:对现实世界数据特征的抽象
    数据模型有两类:
    概念模型,逻辑和物理模型
    数据模型包含:
    数据结构,数据操作,数据约束

    信息世界基本概念:
    实体:客观存在并可相互区分的事物称为实体
    属性:实体所具有的某一特性叫做属性
    码:唯一标识实体的属性
    外码:关系模式R中存在属性不是R的码,但是另一个关系模式的码,则称该属性为R的外码
    主属性:包含在候选码中的属性
    域:取值范围

    常用的逻辑数据模型:
    层次模型
    网状模型
    关系模型

    关系的完整性约束有三种:
    实体完整性
    参照完整性
    用户定义完整性

    数据库系统三级模式:
    外模式:也叫子模式,或者用户模式,是用户数据库的视图
    模式:也叫逻辑模式,是全体数据的逻辑结构的描述
    内模式:也叫存储模式,一个数据库只有一个内模式,是存储方式的描述

    二级映像:
    外模式/模式映像:当模式发生变化时,会自动调整影响,使外模式保持不变,保证了数据的逻辑独立性。
    模式/内模式映像:当内模式发生改变时,会自动调整映像,使模式保持不变,保证了物理独立性。

    数据库管理人员的职责:
    设计数据库
    让用户学会使用
    数据库的运行与维护
    重构


    二、关系数据库

    关系:实体与实体之间的联系
    关系模式:对关系的描述
    关系数据库:各种各样的关系集合

    基本关系操作:
    常用5种:选择,投影,并,差,笛卡尔积

    关系的三类完整性

    选择:选取表中几个元组。
    投影:选择若干列,组成一个新的关系。


    三、关系数据库标准语言SQL


    四、数据库安全性

    数据库的一大特点就是数据库可以共享
    共享必定会带来安全性问题

    安全性控制的常用方法:
    用户识别与鉴定
    存取控制
    视图
    审计
    密码存储


    五、数据库完整性

    数据库完整性为了防止不合语义、不正确的数据
    数据库安全性为了防止非法用户与非法操作


    六、关系数据库理论

    一个设计的不好的关系模式中可能会出现以下问题:
    数据的冗余度大
    插入异常
    删除异常
    修改麻烦

    规范化

    1NF:关系模式R中所有属性都是不可再分的数据项
    2NF:关系模式R中每一个非主属性都是完全依赖于码的
    3NF:每一个非主属性既不部分依赖于码也不传递依赖于码
    BCNF:数据库表中不存在任何一个字段对任一候选字段的传递函数依赖


    七、数据库设计

    设计步骤:
    需求分析
    概念模型设计: E-R图
    逻辑模型设计: 层次结构、网状结构、关系结构
    物理模型设计: 为逻辑数据模型选取一个最适合运行的物理环境
    数据库实施
    数据库运行与维护

    数据字典内容:
    数据项
    数据结构
    数据流
    数据存储
    处理过程

    八、数据库编程

    ODBC编程
    ODBC(OPEN DATABASE CONNECTIVITY) 开放数据库连接
    为了解决在某个RDBMS中编写的应用程序不能在另一个RDBMS下运行的问题
    ODBC体系:
    应用程序
    驱动程序管理器
    数据库驱动程序
    数据源管理

    数据源是用户最终需要访问的数据

    ODBC工作流程:
    配置数据源
    初始化环境
    建立连接
    分配语句句柄 句柄:一个指针
    执行SQL语句
    返回结果集
    查找完成


    九、关系系统及其优化查询

    查询处理步骤
    查询分析
    查询检查
    查询优化
    查询执行


    十、数据库恢复技术

    事务:
    一个数据库操作序列
    一个不可分割的基本单位
    特性:
    原子性 一致性 隔离性 持续性

    数据库恢复的方法
    数据转储 登记日志文件


    十一、并发控制

    并发控制问题产生的原因是
    多用户数据库的存在

    不同的多事务执行方式
    事务串行执行 交叉并发执行 同时并发执行

    封锁

    排它锁(X锁) 共享锁(S锁)

    活锁与死锁
    活锁:一直在尝试获取资源,一直失败,有可能自行解开
    死锁:互相占有对方所需要的资源,永远解不开

    避免活锁的方法:
    按照次序进行封锁

    解决死锁的方法:
    预防死锁:一次封锁法 顺序封锁法
    死锁检测与解除

    并发调度

    可串行化调度:多个事务并发执行的结果与按照某一次序串行执行的结果相同。

    冲突可串行化调度:
    一个调度在保持冲突操作次序不变的情况下,通过交换两个不冲突操作的次序得到一个新的调度,且这个调度是串行的,则为冲突可串行操作。

    冲突操作:不同事务对同一事物的读写操作和写写操作(除此之外都为不冲突操作)

    两段锁协议:
    所有加锁操作均在解锁操作之前

    封锁粒度:封锁对象的大小称为封锁粒度

    封锁粒度越大,并发度越低,开销越小
    封锁粒度越小,并发度越高,开销越大
    按照需求选取封锁粒度

    多粒度封锁

    多粒度树:
    根节点是数据库,表示最大封锁粒度
    叶节点为最小封锁粒度

    显示封锁:直接加到数据项上的锁
    隐式封锁:对上级节点加锁间接加到其上的锁

    意向锁:提高对某个数据项加锁的效率
    对某个节点加意向锁,证明该节点的子节点正在被锁

  • 相关阅读:
    Windows XP上可以安装的SQL Server 2008版本
  • 原文地址:https://www.cnblogs.com/huqingfeng/p/12838788.html
Copyright © 2020-2023  润新知