扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
Oracle数据库中的恢复机制采用了转储和登记日志文件两个技术。
Oracle向数据库管理员(DBA)提供了多种转储后备副本的方法,如文件拷贝、利用Oracle的Export实用程序,用SQL命令spool以及自己编程实现等。相应地,Oracle也提供了多种重装后备副本的方法,如文件拷贝、利用Oracle的Import实用程序、利用SQL*Loader以及自己编程实现等。
在Oracle的早期版本中,日志文件以数据块为单位,也就是说,Oracle的恢复操作不是基于操作,而是基于数据块的。Oracle将更新前的旧值与更新后的新值分别放在两个不同的日志文件中。记录数据库更新前的旧值的日志文件称为数据库前像文件(Befor Image,简称BI文件),记录数据库更新后的新值的日志文件称为数据库的后像文件(After Image,简称AI文件)。由于BI文件关系到能否将数据库恢复到一致性状态,因此BI文件是必须的。而AI文件的作用是减少必须重新运行的事务程序,尽可能多的恢复数据库,所以在Oracle中AI文件是任选的。日志文件是十分占据空间的,为节省存储空间和操作时间,DBA可以不配置AI文件。没有AI文件,恢复机制进行故障恢复时只能执行UNDO处理,不能执行REDO处理。
Oracle为了能够在出现故障时更有效地恢复数据,也为了解决读“脏”数据问题,提供了REDO日志文件和回滚段(Rollback Segment)。REDO日志文件中记录了被更新数据的前像和后像,设在数据库缓冲区中的回滚段记录更新数据的前像。在利用日志文件进行故障恢复时,为减少扫描日志文件的遍数,Oracle首先扫描REDO日志文件,重做所有操作,包括未正常提交的事务的操作,然后再根据回滚段中的数据,撤销未正常提交的事务的操作。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者