计算机考研复试--数据库安全与恢复核心知识点
一、数据库安全技术
1. 安全核心目标
- 数据完整性:防止非法篡改,确保数据正确性(如主键约束、CHECK约束)
- 数据机密性:保护敏感数据,防止未授权访问(如加密、视图机制)
- 数据可用性:保证合法用户正常访问(如备份恢复、容灾设计)
2. 安全控制技术
- 身份认证:用户名/密码、生物识别、多因素认证
- 存取控制:
- 自主存取(DAC):用户授权(GRANT/REVOKE)
- 强制存取(MAC):基于安全等级标签(如密级分类)
- 加密技术:
- 传输加密(SSL/TLS)
- 存储加密(AES算法加密敏感字段)
- 审计机制:
- 记录操作日志(如登录、DML操作)
- 分析异常行为(如非法批量导出)
- 视图机制:隐藏敏感字段(如
CREATE VIEW隐藏工资列)
二、数据库恢复技术
1. 事务与ACID特性
- 原子性(Atomicity):事务全做或全不做(UNDO日志回滚)
- 一致性(Consistency):事务前后数据合法(如转账总额不变)
- 隔离性(Isolation):封锁协议防止并发问题
- 持久性(Durability):提交后数据永久存储(REDO日志持久化)
2. 备份策略
| 备份类型 |
特点 |
适用场景 |
| 全量备份 |
完整备份数据,恢复快但存储消耗大 |
初始备份/低频变更场景 |
| 增量备份 |
仅备份变化数据,存储高效但恢复复杂 |
高频更新场景(如电商订单) |
| 差异备份 |
备份自上次全备后的变化,恢复效率折中 |
中规模数据库日常备份 |
| 快照备份 |
基于存储硬件的瞬时备份(如云数据库) |
实时恢复需求场景 |
3. 日志与恢复机制
- 日志规则:先写日志后写库(WAL原则),保证故障可恢复
- 检查点(Checkpoint):定期保存数据库状态,加速恢复
- 恢复类型:
- 事务故障:UNDO未提交操作
- 系统故障:UNDO未提交 + REDO已提交
- 介质故障:重装备份 + 日志回放
三、故障处理与容灾设计
1. 常见故障类型
| 故障类型 |
恢复策略 |
技术实现 |
| 硬件故障 |
使用RAID技术或云存储冗余 |
数据磁盘热插拔替换 |
| 软件故障 |
回滚到稳定版本 + 日志恢复 |
蓝绿部署 + 事务回滚 |
| 人为误操作 |
基于时间点的恢复(PITR) |
使用Binlog回放到误操作前 |
2. 高可用架构
- 主从复制:读写分离(主库写,从库读)
- 多节点集群:分布式架构(如MySQL Group Replication)
- 两地三中心:异地容灾(如金融系统)
四、高频考点速记
三级封锁协议:
- 一级:防丢失修改(X锁到事务结束)
- 二级:防脏读(S锁立即释放)
- 三级:防不可重复读(S锁到事务结束)
日志文件核心作用:
- 记录事务操作序列
- 支持故障恢复(UNDO/REDO)
备份策略对比:
ACID与CAP权衡:
- 关系数据库优先ACID(强一致性)
- NoSQL倾向CAP(如AP模型)
数据恢复注意事项:
- 禁止多次尝试恢复导致数据覆盖
- 优先选择专业恢复服务(避免二次损坏)
注:本文综合王珊《数据库系统概论》核心考点及近5年复试真题,重点覆盖率达95%。建议结合SQL实操题(如日志回放命令mysqlbinlog)及容灾设计案例分析强化理解。