数据恢复是对数据库进行备份和还原,当数据库因为各种原因被损坏或者无法读取的时候,会造成无法估量的后果,这个时候就需要数据库还原工具,进行还原。
数据库故障分为“软故障”和“硬故障”两种,“软故障”是因为断电导致软件方面的故障,“硬故障”是因为物理硬件坏了,导致数据库破损。相当于电脑的操作系统故障和物理设备的故障。
数据库恢复分为完全备份和增量备份,完整备份效果最好,但是比较消耗时间;增量的备份保存的是对数据库的操作,在完整备份的基础上,使用增量备份也可以达到还原要求,但是增量备份时间消耗比较少,所以在选择数据库还原策略的时候,因为根据实际情况选择完全备份和增量备份。
SQL基础 (数据库、表、数据的增删改查、视图相关,以及所有实验报告源代码)
游标 (类似C++ 的 指针)
存储过程(类似 C++ 的自定义函数)
触发器 (类似 自定义的陷阱,或者说是监听器,满足某个条件了执行某个方法)
用户权限及权限管理 (类似Windows的多用户管理)
并发控制 (了解多个用户同时对数据造成错误的情况 和 解决方法)
数据恢复(当数据库数据丢失,相应的解决方法)
(1)软故障后的恢复。
参照例题中的程序设计事务及事务处理的程序;
模拟软故障的情形,使设计的事务及事务处理程序的各个分支都可以执行到;
体会事务的原子性和一致性。
(2)硬故障后的恢复。
针对一个具体的数据库设计一个备份恢复策略;
做数据库全备份和若干增量备份(每次备份后都有一些数据操作);
模拟一个硬故障(假设数据库损坏);
备份当前日志;
恢复数据库。
(3)在实验报告中要给出具体的操作步骤和过程,并针对各种情况做出具体的分析和讨论。
总体思路:
代码截图:
图 1 首先看到原始的 学时 数据为6
图 2 设计一个事务 内有若干更新操作 中间加一个等待期
图 3 在等待期内 使用任务管理器 强制结束
图 4 再次登入数据库 查看学时数据 还是为6,说明事务完全没有执行
图 5 首先对‘学生管理系统‘进行完整备份
图 6 然后模拟 硬故障 删除该数据库
图 7 接着还原数据库 覆盖还原
图 8 接着打开还原的数据库 发现数据和原先一致