数据库的保护

本文详细探讨了数据库的保护措施,包括安全性问题的处理,如用户标识、存取控制和审计。重点关注了数据完整性,强调完整性约束条件及控制。深入讨论了并发控制,解释了死锁和活锁的概念及其解决方案,以及并发调度的可串行性。此外,还介绍了封锁协议和多粒度封锁的重要性。最后,提到了备份和恢复技术,包括恢复原理、日志文件和不同类型的备份策略。
摘要由CSDN通过智能技术生成

数据库的保护

针对安全性问题的一般处理办法

  1. 用户标识和鉴定(系统提供的最外层安全保护措施)
  2. 存取控制(对登录成功的用户也要控制其对数据的存取)
  3. 定义视图(视图的优点,可以屏蔽一些用户不该看到的数据)
  4. 审计(系统自动将用户对数据库的所有操作记录在上面,利用审计追踪信息能重现导致数据出现现有状况的一系列事件,找出非法存取数据的人)
  5. 数据加密(使用加密技术,密文传输和密文存储)

数据的完整性

指数据的正确性、一致性、相容性

如学生的年龄必须是整数、取值范围是10~30,学生的性别是“男”和“女”,学生的学号必须是唯一的等

完整性约束条件(列级、元组级、关系级)

完整性控制

3方面的功能:定义功能、检查功能、采取措施的功能(立即执行和延迟执行约束)

并发控制(重点)

并发控制带来的不一致性包括3类:

  1. 丢失修改数据 lost update
  2. 不可重复读 nonrepeatable read
  3. 读"脏"数据 dirty read

保证事务ACID特性

  1. 原子性 atomicity
  2. 一致性 consistency
  3. 隔离性 isolation
  4. 持久性 durability

封锁和封锁协议

基本的封锁类型2种:

  1. 排它锁 exclusive locks(简称X锁)
  2. 共享锁 share locks(简称S锁)

封锁协议:

  1. 一级封锁协议
  2. 二级封锁协议
  3. 三级封锁协议

活锁和死锁

活锁:

如果事务T1封锁了数据R,事务T2又请求封锁R,于是T2等待。T3也请求封锁R,当T1释放了R上的封锁之后系统首先批准了T3的请求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值