拓扑园

  • Oracle性能优化
  • Oracle项目案例
    • Oracle近期项目案例(目录)
    • Oracle实战问题解析(目录)
    • Oracle数据库名变更流程(2种方式)
    • Oracle数据库目录更换流程(使用Oracle的clone工具)
    • Oracle数据库迁移方案(目录)
    • 标准化文档系列
  • 技术研究-密保
    • FG-MySQL
    • FG-Docker/K8S
    • FG-PostgreSQL
    • FG-ORACLE_BBED
    • FG-ORACLE
    • FG-Elasticsearch(ES)+ELK
    • Oracle-19C-OCP
    • WERN_ORACLE培训
    • redis数据库
    • Nginx培训学习系列
  • 图灵小队
    • MySQL8.0/Oracle/Memcached/Redis等安装配置于RHEL/OL6/7/8.X系列-运行环境最优配置
    • PG安装配置于RHEL/9X系列-运行环境最优配置
    • 自动维护任务详解-开启、关闭信息统计收集(统计信息)
    • 图灵小队-Oracle存储过程导出表的明细_UTL_FILE(文章)
    • 图灵小队-Oracle数据库删除/卸载操作指南(文章)
    • 图灵小队-Oracle常用性能查询SQL语句(文章)
    • 图灵小队-Oracle数据库上线前检查(文章)
    • 图灵小队-Oracle常用SQL语句(文章)
    • 图灵小队-Oracle脚本合集(文章)
    • 图灵小队-Oracle技巧记录(文章)
    • LLL的Oracle培训(目录)
    • LLL的docker培训(目录)
    • 标准化文档系列(目录)
    • Oracle/MySQl等面试题
    • 图灵小队
  • Oracle
    • Oracle
    • ADG
    • RAC
    • ASM
    • EXPDP/IMPDP
    • 工厂数据导入导出系列
    • OGG
    • RMAN
  • 云计算
    • 云计算
    • docker
    • kubernetes
  • Linux
    • Linux
    • PHP
    • Nginx
    • haproxy
    • mail
    • 网站
    • 域名
    • 网址收藏
  • 数据中心
    • 数据中心
    • EBS数据文件库容
    • VMware虚拟化
    • mysql
    • EBS系列
    • 大数据
    • SVN
    • zabbix
    • SAP
    • 备份相关
    • FC交换机
    • SVN
  • 其他
    • 外研英语4年级下册-听力
    • 影视系列
    • 如何使用iTunes软件通过抓包下载旧版本的ios的app
Oracle数据库恢复专家团队:TEL:18562510581(微信同号);QQ:284833194;QQ群:496333360
天高任鸟飞
  1. 首页
  2. 图灵小队
  3. 正文

Oracle—关于temporary undo(临时撤销段)

2022年7月19日 237点热度 0人点赞 0条评论

目录

  • 一、概念
    • 1、关于管理临时撤销段
    • 2、启用和禁用临时撤销段
    • 3、关于管理临时撤销
  • 二、启动临时撤销段会有如下的好处:
    • 1、临时撤销信息会减少撤销表空间中撤销记录的数量
    • 2、临时撤销信息可以减少重做记录。
    • 3、临时撤销端可以在ADG搭建DG环境中支持临时表中数据的DML操作。
  • 三、启用和禁用临时撤销段
    • 1、怎样启用或禁用临时撤销段:

一、概念

默认,临时表的撤销信息都会存储在撤销表空间中,并且会将重做信息记录到重做日志。这个方式和普通的表的撤销信息是一样管理的。然而,你可以使用TEMP_UNDO_ENABLED初始化参数来分离临时表的撤销信息和普通表的撤销信息。当这个参数设置成TRUE,这是临时表的的撤销信息被称作TEMPORARY UNDO。这是12c才有的功能。

1、关于管理临时撤销段

临时撤销记录都是存储在数据库的里in师表空间中,并且因此不会记录日志到重做日志中。当临时撤销段启用了,临时表空间会有一些段空间用来存放临时撤销段。这些段空间被称为临时撤销段。

2、启用和禁用临时撤销段

你可以在系统或会话层启动或禁用临时撤销段,要想这么做,得设置TEMP_UNDO_ENABLED初始化参数。

3、关于管理临时撤销

临时撤销记录都是存储在数据库的临时表空间中,并且因此不会记录日志到重做日志中。当临时撤销段启用了,临时表空间会有一些段空间用来存放临时撤销段。这些段空间被称为临时撤销段。(官方文档啰嗦,这里又说了一遍)

当临时撤销段启用了,数据库会增加临时表空间用来存放撤销记录的空间大小。

二、启动临时撤销段会有如下的好处:

1、临时撤销信息会减少撤销表空间中撤销记录的数量

撤销表空间中更少的撤销记录可以让更多必要的撤销信息存入撤销表空间。

2、临时撤销信息可以减少重做记录。

启用了临时撤销段让更少的数据写入到重做日志中可以提升性能,并且那些分析重做日志的组件可以解析更少的重做数据。

3、临时撤销端可以在ADG搭建DG环境中支持临时表中数据的DML操作。

然而,DDL语句创建临时表必须是主库发出(这里不是很明白,所有的操作不都是主库发出吗?)。

可以分别给指定的会话或者给整个数据库系统启动撤销段。当你使用ALTER SESSION给指定的会话启用了临时撤销段,那么这个会话创建的临时撤销段不会影响其他的会话。当你使用ALTER SYSTEM给系统启用了临时撤销段,那么已经存在的和新的会话都会期启用临时撤销段。

当一个会话第一次使用了临时对象,那么当前的TEMP_UNDO_ENABLE初始化参数值会对当前会话一直有效。因此,如果一个会话已经启动了临时撤销段并且会话也在使用临时对象,那么不能给该会话禁用临时撤销段。相同的,如果一个会话已经禁用了临时撤销段并且会话在使用临时对象,那么不能为该会话启用临时撤销段。

ADG搭建DG的时候,临时撤销段是默认启用的选项。设置TEMP_UNDO_ENABLED初始化参数因为ADG默认配置的关系(默认开启),不会对ADG有任何影响。

三、启用和禁用临时撤销段

你可以在会话和系统级别启用和禁用临时撤销段。为了这么做,你需要配置TEMP_UNDO_ENABLED初始化参数。

1、怎样启用或禁用临时撤销段:

(1)在SQLPLUS中,连接到数据库.

如果在会话中启用和禁用临时撤销段,那么在SQLPLUS的会话中操作。

如果在系统中启用和禁用临时撤销段,那么请使用管理员身份在SQLPLUS中使用ALTER SYSTEM系统权限操作。

(2)设置TEMP_UNDO_ENABLED初始化参数

①在会话级别启用临时撤销段,请执行以下语句:
ALTER SESSION SET TEMP_UNDO_ENABLED = TRUE;
②在会话级别禁用临时撤销段,请执行以下语句
ALTER SESSION SET TEMP_UNDO_ENABLED = FALSE;
③在系统级别启用临时撤销段,请执行以下语句
ALTER SYSTEM SET TEMP_UNDO_ENABLED = TRUE;
④在系统级别启用了临时撤掉段后,会话可以使用ALTER SESSION禁用临时撤销段。

在系统级别禁用临时撤销段,请执行以下语句

ALTER SYSTEM SET TEMP_UNDO_ENABLED = FALSE;

在系统级别禁用了临时撤掉段后,会话可以使用ALTER SESSION启用临时撤销段。

可以在初始化参数中设置TEMP_UNDO_ENABLED为TRUE将系统启用临时撤销段。这种情况下,所有的新会话都会创建临时撤销段,除非在系统级别使用ALTER SYSETEM语句,或者在会话级别使用ALTER SESSION禁用了临时撤销段。

标签: 暂无
最后更新:2022年7月19日

admin

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

COPYRIGHT © 2022 拓扑园. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang

鲁ICP备2021020523号

鲁ICP备2021020523号