数据库恢复的三种方式
数据库可能因为硬件或软件(或两者同时)的故障变得不可用,不同的故障情况需要不同的恢复操作。我们必须决定最适合业务环境的恢复方法。在数据库中恢复由3种类型或方法,即应急(crash)恢复、版本(version)恢复和前滚(rool forward)恢复。
应急恢复
应急恢复用于防止数据库处于不一致或不可用状态。数据库执行的事务(也称工作单元)可能被意外中断,若在作为工作单位一部分的所有更改完成和提交之前发生故障,则该数据库就会处于不一致和不可用的状态。这时,需要将该数据库转化为一致和可用的状态。
为此,需要回滚未完成的事务,并完成当发生崩溃时仍在内存中的已提交事务。如在 COMMIT语句之前发生了电源故障,则在下一次重新启动并再次访问该数据库时,需要回滚到执行COMMMIT语句前的状态。回滚语句的顺序与最初执行时的顺序相反。
版本恢复
版本恢复指的是使用备份操作期间创建的映象来复原数据库的先前版本。这种恢复是通过使用一个以前建立的数据库备份恢复出一个完整的数据库。一个数据库的备份允许你吧数据库恢复至和这个数据库在备份时完全一样的状态。而从备份建立后到日志文件中最后记录的所有工作事务单位将全部丢失。
前滚恢复
这种恢复技术是版本恢复的一个扩展,使用完整的数据库备份和日志相结合,可以使一个数据库或者被选择的表空间恢复到某个特定时间点。如果从备份时刻起到发生故障时的所有日志文件都可以获得的话,则可以恢复到日志上涵盖到的任意时间点。前滚恢复需要在配置中被明确激活才能生效。
基本内容
数据库恢复是怎么回事?
数据库文件碎片的产生:数据库文件就是将一个或者多个使用者的数据集中的存储在一个文件中。这个数据库存储数据量的多少跟随着使用者再次输入的数据而增加。当一个数据库文件被创建时,系统会自动给这个数据库文件在磁盘上或者RAID阵列磁盘中指派一个足够存储目前数据的空间给它。
而后来增加的新数据如果当前空间存储不下,系统将会为这个数据库再指派其他空间来存储后添加的数据。这种存储数据的过程是很正常的,只要系统指派的当前空间存储不下新输入数据量时,就会再指派空间来供数据库存储数据。这样就会出现一个数据库文件存储在磁盘空间上的不连续性,这些不连续的磁盘空间上的数据就是通常所说的碎片。
数据库恢复:当数据库文件被意外的删除时,文件的元数据同时会被删除。本来由数据碎片通过元数据而联系在一起组成的数据库,因为元数据的丢失而在硬盘上形成碎片。
一般数据库恢复软件只能恢复简单的不存在碎片的被删除的数据库(即存储的数据空间是连续的)。数据库恢复工程师或者数据库软件程序则可将这些碎片有序的联系到一起,并把数据库成功恢复。在您的数据库被删除后,能恢复的成功率取决于删除后你是否重新在磁盘上写入新的数据。
因此,建议在数据库丢失后立刻关闭计算机或服务器,不要再在原盘上写入新的数据和做任何操作。目前,对于流行的ORACLE数据库和ACCESS数据库,则可以使用赤兔ORACLE数据库恢复软件和赤兔ACCESS数据库恢复软件恢复。
建议:如果您的数据库被删除,请立即停止任何操作,以免改变数据存储结构。如果您的数据库被删除,不要在原来的位置运行任何软件程序或写入数据操作,以免写入的数据将数据库原来的数据复盖。
数据库恢复设备展示
1、PC3000UDMA
2、PC3000FOR SCSI/SAS/FC
3、服务器硬盘固件修复设备
4、SCSI服务器
5、SAS服务器
6、数据库修复软件