Oracle OCP认证考试题目详解082系列第5题

Oracle OCP认证考试题目详解082系列第5题

一、考察的知识点摘要

本题考察 Oracle数据库临时撤销(Temporary Undo)机制 以及临时表操作时UNDO数据的存储位置,核心是对临时撤销配置下,临时表UPDATE操作产生的UNDO存储逻辑的理解。

二:英文题目和英语选项和答案

Question

A database is configured to use automatic undo management with temporary undo enabled.

An UPDATE is executed on a temporary table.

Where is the UNDO stored?

Options

A. in the undo tablespace

B. in the SYSAUX tablespace

C. in the SGA

D. in the PGA

E. in the temporary tablespace

Correct Answer:E

三:题目和选项的翻译,答案

题目

某数据库被配置为使用自动撤销管理且启用了临时撤销。

对一个临时表执行UPDATE操作。

撤销数据存储在哪里?

选项

A. 在撤销表空间中

B. 在SYSAUX表空间中

C. 在系统全局区(SGA)中

D. 在程序全局区(PGA)中

E. 在临时表空间中

答案:E

四:题目解析

当Oracle数据库启用临时撤销(Temporary Undo)功能时(通过TEMP_UNDO_ENABLED参数控制,启用后该参数值为TRUE),针对临时表 执行的DML操作(如本题的UPDATE)产生的UNDO数据,不再存储到传统的"撤销表空间(undo tablespace)",而是存储到**临时表空间(temporary tablespace)**中。原因如下:

  • 临时表的核心特性是**"会话私有、临时有效"**,其操作产生的回滚需求(UNDO)仅需满足当前会话内的临时一致性,无需长期持久化;
  • 临时表空间本身的设计目标就是存储会话级的临时数据(如排序段、临时表数据等),天然适配临时UNDO的"临时性"需求。

对其他选项的排除逻辑:

  • A. undo tablespace :仅用于存储持久化表(非临时表)操作的UNDO;临时表启用临时撤销后,UNDO不再写入此表空间。
  • B. SYSAUX tablespace:是系统辅助表空间,用于存储数据库元数据(如AWR报告、审计信息等),与UNDO存储无直接关联。
  • C. SGA(System Global Area) :是Oracle实例的内存共享区,用于存储高速缓存、数据字典缓存等;UNDO是以磁盘文件形式存于表空间(属于持久化存储),SGA仅为内存区域,不直接存储UNDO数据。
  • D. PGA(Program Global Area) :是服务器进程的私有内存区,用于存储进程私有的执行上下文等;同样属于进程级内存,不承担UNDO数据的存储职责。

五:考察的知识点详情

1. 临时撤销(Temporary Undo)的概念

Oracle引入"临时撤销"是为了优化临时表操作的性能:在传统模式下,临时表操作产生的UNDO会被写入undo表空间,但临时表的UNDO属于"会话内临时回滚",无需长期持久化。将这部分UNDO转移到临时表空间存储,可减少undo表空间的I/O压力与空间占用。

2. 临时撤销的启用条件

需同时满足两个前提:

  • 数据库级别启用自动撤销管理 (通过参数UNDO_MANAGEMENT=AUTO配置,默认已开启);
  • 显式设置TEMP_UNDO_ENABLED=TRUE(该参数调整后,需重启数据库实例或切换实例生效)。
3. 不同表类型的UNDO存储逻辑差异
表类型 临时撤销启用前(UNDO存储目标) 临时撤销启用后(UNDO存储目标)
持久表 写入undo表空间 写入undo表空间
临时表 写入undo表空间 写入临时表空间

最后,各位学习者,点个关注吧!我们一起成长,一起成为大佬!

相关推荐
言乐6几秒前
Python视频相对亮度检测
数据库·python·计算机视觉·小程序·音视频
snow@li24 分钟前
中台:中台即复用 / 理解企业架构中的能力抽象与分层共享 / 中台体系全景梳理 / 共性能力抽象、沉淀并复用
数据库
SelectDB技术团队29 分钟前
AB 实验指标计算场景:Apache Doris / SelectDB 的技术能力、选型对比与实践
大数据·数据库·数据分析·apache·用户运营·apache doris·selectdb
snow@li41 分钟前
数据库:B+ 树 / 数据库索引的底层支柱
数据库
梦想的旅途21 小时前
企业微信二次开发实战:基于RPA接口的私域中台架构设计与选型指南
数据库·企业微信·rpa
许彰午1 小时前
87_Python Django模型与数据库
数据库·python·django
—Miss. Z—2 小时前
计算机二级MySQL选择题考点Ⅱ
数据库·mysql·oracle
敖行客 Allthinker2 小时前
IM 融合专题:后端架构师的核心修炼
java·开发语言·数据库
无忧.芙桃2 小时前
线程同步与线程互斥(上)
linux·运维·操作系统·运维开发
翔云1234562 小时前
MySQL 中 CURRENT_TIMESTAMP 到底取的是 INSERT 时间,还是 COMMIT 时间?
数据库·mysql