Oracle11g温习-第十一章:管理undo
2013年4月27日 星期六
10:40
|
1、undo tablespace 功能 |
|
|
undo tablespace 功能:用来存放从datafiles 读出的数据块旧的镜像 【 1) 回滚事务:rollback 2) 读一致性:正在做DML操作的数据块,在没有提交前,其他用户不能读,其他用户读undo里面的数据块信息 3) 事务的恢复:instance recover (undo -------->rollback) 4) 倒序查询:flashback query、flashback table 】 |
|
|
2、undo 的管理模式 |
|
|
1) manaual 手工:roll segment 2) auto 自动: undo tablespace ( init parameter :undo_management = auto) ,自动创建undo段 |
|
|
3、undo 表空间管理 |
|
|
1)【建立新的undo表空间(处于active状态的undo tablespace 不能offline 和 drop),可以建立多个undo表空间,但一个时刻只有一个处于active 】 SYS @ prod > create undo tablespace undotbs2 datafile '/u01/app/oracle/oradata/orcl/undotbs02.dbf' size 100m autoextend on next 10m maxsize 500m; 创建自动扩展的undo表空间
Tablespace created. SYS @ prod > select tablespace_name,status,contents from dba_tablespaces; TABLESPACE_NAME STATUS CONTENTS ------------------------------ --------- --------- SYSTEM ONLINE PERMANENT UNDOTBS ONLINE UNDO SYSAUX ONLINE PERMANENT TEMP ONLINE TEMPORARY USERS ONLINE PERMANENT UNDOTBS02 ONLINE UNDO 2)查看当前正在使用的undo tablespace SYS @ prod > show parameter undo NAME TYPE VALUE ------------------------------------ --------------------------------- ------------------------------ undo_management string AUTO undo_retention integer 900 undo_tablespace string UNDOTBS 3)切换undo表空间 SYS @ prod >alter system set undo_tablespace=undotbs2; System altered. SYS @ prod > show parameter undo NAME TYPE VALUE ------------------------------------ --------------------------------- ------------------------------ undo_management string AUTO undo_retention integer 900 undo_tablespace string UNDOTBS02 4)删除undo tablespace SYS @ prod >drop tablespace undotbs including contents and datafiles; Tablespace dropped. 5) undo_retention 参数
6)undo 表空间的大小 1) undo_retention 2) undo block /per second 3) UNDO BLOCK SIZE |
|
|
4、undo 信息的查询 |
|
|
1) v$session 【查看用户建立的session】 2) v$transaction 【当前的事务】 3) v$rollname 【回滚段的名称】 4) v$rollstat 【回滚段的状态】 SSYS @ prod > desc v$session; SYS @ prod > select username,sid,serial# from v$session where username is not null; USERNAME SID SERIAL# ------------------------------ ---------- ---------- SCOTT 141 4 SYS 159 3 SYS @ prod > desc v$transaction ;
Name Null? Type ----------------------------------------- -------- ---------------------------- ADDR RAW(4) 事务处理状态对象的地址 XIDUSN NUMBER ——xidusn :undo segment 的id 撤消段的号 XIDSLOT NUMBER ——xidslot:事务槽的id 插曹号 XIDSQN NUMBER 序列号 UBAFIL NUMBER 撤消块地址(UBA)的文件号 UBABLK NUMBER UBA 块号 UBASQN NUMBER UBA 序列号 UBAREC NUMBER UBA 记录号 STATUS VARCHAR2(16) 状态号 START_TIME VARCHAR2(20) 起始时间(挂钟) START_SCNB NUMBER 起始系统更改号(SCN)的基点 START_SCNW NUMBER 起始SCN 包 START_UEXT NUMBER 起始区号 START_UBAFIL NUMBER 起始UBA 文件号 START_UBABLK NUMBER 起始UBA 块号 START_UBASQN NUMBER 起始UBA 序列号 START_UBAREC NUMBER 起始记录号 SES_ADDR RAW(4) ——SES_ADDR 当前会话的地址 FLAG NUMBER 标志位 SPACE VARCHAR2(3) 如果为空间事务处理,则为Yes RECURSIVE VARCHAR2(3) 如果为递归事务处理,则为Yes NOUNDO VARCHAR2(3) 如果为撤消事务处理,则为Yes PTX VARCHAR2(3) 如果为并行事务处理,则为Yes,否则设为No NAME VARCHAR2(256) PRV_XIDUSN NUMBER 上一个事务处理的撤消段的号 PRV_XIDSLT NUMBER 上一个事务处理的插槽号 PRV_XIDSQN NUMBER 上一个事务处理的序列号 PTX_XIDUSN NUMBER 父级XID 的回退段号 PTX_XIDSLT NUMBER 父级XID 的插曹号 PTX_XIDSQN NUMBER 父级XID 的序列号 DSCN-B NUMBER 独立的SCN 基点 DSCN-W NUMBER 独立的SCN 包 USED_UBLK NUMBER 已用的撤消块数量 USED_UREC NUMBER 已用的撤消记录数量 LOG_IO NUMBER 逻辑I/O PHY_IO NUMBER 物理I/O CR_GET NUMBER 一致性获取 CR_CHANGE NUMBER 一致性更改 START_DATE DATE DSCN_BASE NUMBER DSCN_WRAP NUMBER START_SCN NUMBER DEPENDENT_SCN NUMBER XID RAW(8) PRV_XID RAW(8) PTX_XID RAW(8) SYS @ prod > select a.SID,a.SERIAL#,a.USERNAME,b.xidusn,xidslot,b.ubablk,b.status,b.name from v$session a, v$transaction b where a.saddr=b.ses_addr; SID SERIAL# USERNAME XIDUSN XIDSLOT UBABLK STATUS NAME ---------- ---------- -------------------- ---------- ---------- ---------- ---------------- ---------- 144 7 SCOTT 15 26 76 ACTIVE
【查看undo segment 数据块状态 (dba_undo_EXTENTS)】 SYS @ prod > insert into t01 values (6) ; SYS @ prod > insert into t01 values (7) ; SYS @ prod > create table emp1 as select * from scott.emp; SYS @ prod > insert into emp1 select * from emp1; SYS @ prod > select segment_name,tablespace_name,extent_id,file_id ,bytes/1024 ,status from dba_undo_extents where status like '%ACTIVE%'; 【查看数据库中各个undo段的状态】 SEGMENT_NAME TABLESPACE_NAME EXTENT_ID FILE_ID BYTES/1024 STATUS ------------------------------ ------------------------------ ---------- ---------- ---------- ----------- ---------- ---------- ---------- _SYSSMU18$ UNDO_TBS 2 7 64 ACTIVE _SYSSMU15$ UNDO_TBS 0 7 64 ACTIVE SYS @ prod > COMMIT; Commit complete. SYS @ prod > / SEGMENT_NAME TABLESPACE_NAME EXTENT_ID FILE_ID BYTES/1024 STATUS ------------------------------ ------------------------------ ---------- ---------- ---------- ---------- _SYSSMU15$ UNDO_TBS 0 7 64 ACTIVE 【查看undo tablespace 统计信息v$undostat;】 SYS @ prod > select BEGIN_TIME,end_time,undotsn,undoblks,ACTIVEBLKS,EXPIREDBLKS,MAXQUERYID from v$undostat; BEGIN_TIME END_TIME UNDOTSN UNDOBLKS ACTIVEBLKS EXPIREDBLKS MAXQUERYID ------------------- ------------------- ---------- ---------- ---------- ----------- ------------- 2011-08-08 10:22:35 2011-08-08 10:23:20 8 0 160 760 2011-08-08 10:12:35 2011-08-08 10:22:35 8 6 160 760 2011-08-08 10:02:35 2011-08-08 10:12:35 8 589 160 8 2011-08-08 09:52:35 2011-08-08 10:02:35 8 179 160 8 2011-08-08 09:42:35 2011-08-08 09:52:35 8 19 160 0 2011-08-08 09:32:35 2011-08-08 09:42:35 1 7 160 2840 2011-08-08 09:22:35 2011-08-08 09:32:35 1 2 160 2848 2011-08-08 09:12:35 2011-08-08 09:22:35 1 0 0 0 2011-08-08 09:02:35 2011-08-08 09:12:35 1 3 0 0 SYS @ prod > select segment_name,tablespace_name ,segment_id,file_id ,status from dba_rollback_segs; SEGMENT_NAME TABLESPACE_NAME SEGMENT_ID FILE_ID STATUS ------------------------------ ------------------------------ ---------- ---------- ---------------- SYSTEM SYSTEM 0 1 ONLINE _SYSSMU1$ RTBS 1 2 ONLINE _SYSSMU2$ RTBS 2 2 ONLINE _SYSSMU3$ RTBS 3 2 ONLINE _SYSSMU4$ RTBS 4 2 ONLINE _SYSSMU5$ RTBS 5 2 ONLINE _SYSSMU6$ RTBS 6 2 ONLINE _SYSSMU7$ RTBS 7 2 ONLINE _SYSSMU8$ RTBS 8 2 ONLINE _SYSSMU9$ RTBS 9 2 ONLINE _SYSSMU10$ RTBS 10 2 ONLINE |
Oracle11g温习-第十一章:管理undo的更多相关文章
- Oracle11g温习-第三章:instance实例管理
2013年4月27日 星期六 10:30 1.instance 功能: 用于管理和访问database. 2.init parameter files :管理实例相关启动参数.位置:$ORACLE ...
- Oracle11g温习-第十七章:权限管理
2013年4月27日 星期六 10:50 1.权限(privilege): [system privilege(系统权限):针对于database 的相关权限 object p ...
- 第十一章 管理类型(In .net4.5) 之 管理对象的生命周期
1. 概述 本章内容包括 管理非托管资源.使用IDisposable接口 以及 管理析构器和垃圾回收. 2. 主要内容 2.1 理解垃圾回收机制 ① 代码执行的时候,内存中有两个地方存放数据项:堆 和 ...
- Oracle11g温习-第四章:手工建库
1.create database plan 1.库类型: OLTP : 在线事务处理系统 OLAP : 在线应用处理系统 DSS : 数据决策系统 2.数据库名字及字符集 3. ...
- Oracle11g温习-第七章:redo日志
2013年4月27日 星期六 10:33 1.redo (重做) log 的功能: 用于数据恢复 2.redo log 特征: [特征]: 1) 记录数据块的变化(DML.D ...
- Oracle11g温习-第六章:控制文件
2013年4月27日 星期六 10:33 .控制文件的功能和特点 1) [定义数据库当前物理状态] 2) [维护数据的一致性] 如果控制文件中的检查点与数据文件中的一致,则说明数据一致,可以启动到 ...
- Oracle11g温习-第十三章:索引
2013年4月27日 星期六 10:46 1.索引(Index)的功能:对记录进行排序,加快表的查询速度 2.索引的分类 1)B-tree 索引(默认) a.在一个大表上 b.建立在重复值比较少的 ...
- Oracle11g温习-第五章:数据字典
1.数据字典(Data dictionary)的功能 1) central of oracle database 每个oracle数据库的核心 2) descr ...
- <构建之法>第十一章、十二章有感
十一章:软件设计与实现 工作时要懂得平衡进度和质量.我一直有一个困扰:像我们团队这次做 男神女神配 社区交友网,我负责主页的设计及内容模块,有个队友负责网站的注册和登录模块,有个队友负责搜索模块,有个 ...
随机推荐
- (转载)winform图片标尺控件
最近要做个winform的东西,要在里面集成一个类似Windows自带画图的标尺功能,还要能在图片上画矩形框.在网上找了好久也没找到写好的控件,无奈自己做了一个. 目前还有些bug,这里先做个分享.( ...
- 3、Python函数详解(0601)
回顾: re search,findall,finditer.sub,subn function () 调用函数 def func_name(arg1,....) 生成函数对象 func_s ...
- shell中的${},##, %% , :- ,:+, ? 的使用
假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt 可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个/ 及其左边的字符串:dir1/dir2 ...
- 【UOJ#196】【BZOJ4574】[Zjoi2016]线段树
题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=4574 http://uoj.ac/problem/196 考虑数字随机并且值域够大,我们 ...
- GYM 101064 2016 USP Try-outs G. The Declaration of Independence 主席树
G. The Declaration of Independence time limit per test 1 second memory limit per test 256 megabytes ...
- cp命令覆盖文件时不用按Y来确认的方法
我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖.文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结 ...
- python类的成员
一.实例变量:简单的来说就是给对象赋值 class Person: def __init__(self, name, card_no, height, weight, address, laopo): ...
- 日期时间函数 mysql 和sqlserver 中对于常用函数的日期和时间函数的区别
1. sqlserver中获取时间用getdate(),默认返回格式是2019-01-21 13:58:33.053,具体的年月日,时分秒毫米,年月日之间用短线连接,时分秒之间用冒号连接,秒和毫米之间 ...
- 【SQL Prompt】SQL Prompt7.2下载及破解教程
基本介绍 SQL Prompt能根据数据库的对象名称,语法和用户编写的代码片段自动进行检索,智能的为用户提供唯一合适的代码选择.自动脚本设置为用户提供了简单的代码易读性--这在开发者使用的是不大熟悉的 ...
- 堆排序 java实现
import java.util.Arrays; /* * 思路: * 1.方法adjustDown:对于一个数组a[],针对第i个数进行向下(直到len-1)调整,使得该位置成为大顶堆 * 2.方法 ...