每日一题--003

当Oracle数据库实例异常终止时,实例恢复过程中需要使用哪些重做日志记录?

A、上一个检查点之后的所有重做日志记录

B、所有联机重做日志文件

C、当前日志文件中的所有重做日志记录

D、归档重做日志文件

当Oracle数据库实例异常终止时,实例恢复的目的是利用重做日志记录来重新应用在故障发生前已提交的事务,确保数据的一致性和完整性。下面是对每个选项的解释:

A. 当前日志文件中的所有重做日志记录:

仅使用当前日志文件中的记录可能不足以恢复所有已提交的事务,因为部分事务的重做信息可能存在于其他日志文件中。

B. 归档重做日志文件:

归档日志文件用于完整的数据库恢复,如在数据库备份后的数据恢复中使用,而非实例恢复中。

C. 上一个检查点之后的所有重做日志记录:

实例恢复涉及从最后一个检查点开始应用所有重做日志记录。检查点是数据库定期记录的一种状态,从该状态到实例故障发生时之间的所有变更都需要通过重做日志记录来恢复。

D. 所有联机重做日志文件:

虽然联机重做日志文件包含了必要的数据,但并非所有这些文件都需要用于实例恢复,只有从最后一个检查点之后的重做日志记录才是必要的。

正确的答案是 C,即"上一个检查点之后的所有重做日志记录"。这包括所有自上一个检查点以来的重做日志记录,无论这些记录是位于当前日志文件还是其他联机重做日志文件中。这些记录确保了在实例异常终止后,所有已提交的事务都能被正确重做以恢复数据库状态。

相关推荐
童谣135 分钟前
越华环保集团市级统筹申报数字化中台:政策校验与减排仿真一体化架构
数据库·架构
制造数据与AI践行者老蒋43 分钟前
离谱!PromptTemplate 遇上 JSON,花括号直接引发解析战争
数据库·microsoft·json
一叶龙洲44 分钟前
向日葵远程Ubuntu,支持隐私屏
linux·运维·ubuntu
中微极客1 小时前
用LangChain 0.3构建生产级RAG与Agent:从API集成到Streamlit部署
数据库·人工智能·langchain
吴声子夜歌1 小时前
MongoDB 4.x——并发优化
数据库·mongodb
我叫黑大帅2 小时前
git 的 NFD 与 NFC 有什么区别?为什么我有个文件在 NFC 中间不会被当成改动,在 NFD 中就会当成改动
git·面试·github
我叫黑大帅2 小时前
add()和 __add__() 写法哪个更好呢?
后端·python·面试
不如语冰2 小时前
AI大模型入门-Python进阶-上下文管理与with语句
开发语言·数据结构·数据库·人工智能·pytorch·redis·python
寒水馨2 小时前
Linux下载、安装llama.cpp-b10068(附安装包llama-b10068-bin-ubuntu-vulkan-x64.tar.gz)
linux·ubuntu·llm·llama·本地部署·llama.cpp·推理引擎
l1t4 小时前
DeepSeek总结的DuckLake 架构深度剖析-2
数据库·架构