2013年4月27日 星期六

10:40

1undo tablespace 功能

undo tablespace 功能:用来存放从datafiles 读出的数据块旧的镜像

            1)   回滚事务:rollback

            2)   读一致性:正在做DML操作的数据块,在没有提交前,其他用户不能读,其他用户读undo里面的数据块信息

            3)   事务的恢复:instance recover   (undo -------->rollback)

            4)   倒序查询flashback queryflashback table

         】

2undo 的管理模式

1)   manaual 手工:roll segment

2)   auto  自动:      undo tablespace ( init parameter :undo_management  = auto) ,自动创建undo段

3undo 表空间管理

 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 参数

SYS @ prod > show parameter undo;

NAME                                        TYPE                              VALUE

------------------------------------ --------------------------------- ------------------------------

undo_management                string                            AUTO

undo_retention                       integer                           900

undo_tablespace                     string                            UNDOTBS

——undo_retention   设置当事务提交后,undo 数据块在undo tablespace空间未使用完之前的的保留时间】  

SYS @ prod > alter system set undo_retention=600;

SYS @ prod > show parameter undo

NAME                                 TYPE                              VALUE

------------------------------------ --------------------------------- ------------------------------

undo_management                   string                            AUTO

undo_retention                       integer                           600

undo_tablespace                      string                            UNDOTBS

SYS @ prod > Alter tablespace undotbs1 retention  guarantee;【保证在retention 期间不允许被覆盖】

SYS @ prod >  Alter tablespace undotbs1 retention noguarantee;【想禁止undo表空间retention guarantee

 6)undo 表空间的大小

1)   undo_retention

2)   undo block /per second

3)   UNDO BLOCK SIZE

4undo 信息的查询

       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

SYS @ prod > desc  v$rollname;    【查看当前的回滚段】

——【默认system有一个undo segment,undo tablespace 会被分配10个undo segment】

SYS @ prod > select * from v$rollname;

USN NAME

---------- ----------

0 SYSTEM

11 _SYSSMU11$

12 _SYSSMU12$

13 _SYSSMU13$

14 _SYSSMU14$

15 _SYSSMU15$

16 _SYSSMU16$

17 _SYSSMU17$

18 _SYSSMU18$

19 _SYSSMU19$

20 _SYSSMU20$

SYS @ prod > select usn,extents,writes,xacts,status from v$rollstat;      【查看回滚段的状态

USN    EXTENTS     WRITES      XACTS STATUS

---------- ---------- ---------- ---------- ---------------

0          6       5560          0 ONLINE

11         10     529954          0 ONLINE

12         17    1344804          0 ONLINE

13         16     800720          0 ONLINE

14         27   11447082          1 ONLINE

15         17    1033468          0 ONLINE

16          6     307764          0 ONLINE

17         15     734590          0 ONLINE

18          8     398340          0 ONLINE

19         16     785134          0 ONLINE

20          8     407692          0 ONLINE

SYS @ prod > select a.sid,  a.serial#,  a.username,  b.xidusn,  xidslot,  b.ubablk,  b.status,  c.usn,  c.name,   d.extents,   d.writes,    d.xacts

               from v$session a,v$transaction b,v$rollname c ,v$rollstat d

             where a.saddr=b.ses_addr and b.xidusn=c.usn and c.usn=d.usn

SID        SERIAL#   USERNAME     XIDUSN    XIDSLOT     UBABLK     STATUS         USN     NAME            EXTENTS     WRITES          XACTS

---------- ---------- ------ ---------- ---------- ---------- ------- ---------- ---------- ---------- ---------- ------------ ---------- ---------- ------------ ----------

147         54            SCOTT                14                22              2595         ACTIVE          14    _SYSSMU14$         27           11447082

【查看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的更多相关文章

  1. Oracle11g温习-第三章:instance实例管理

    2013年4月27日 星期六 10:30 1.instance 功能:   用于管理和访问database. 2.init parameter files :管理实例相关启动参数.位置:$ORACLE ...

  2. Oracle11g温习-第十七章:权限管理

    2013年4月27日 星期六 10:50 1.权限(privilege):     [system privilege(系统权限):针对于database 的相关权限         object p ...

  3. 第十一章 管理类型(In .net4.5) 之 管理对象的生命周期

    1. 概述 本章内容包括 管理非托管资源.使用IDisposable接口 以及 管理析构器和垃圾回收. 2. 主要内容 2.1 理解垃圾回收机制 ① 代码执行的时候,内存中有两个地方存放数据项:堆 和 ...

  4. Oracle11g温习-第四章:手工建库

     1.create database plan 1.库类型:   OLTP :  在线事务处理系统   OLAP : 在线应用处理系统   DSS :    数据决策系统 2.数据库名字及字符集 3. ...

  5. Oracle11g温习-第七章:redo日志

      2013年4月27日 星期六 10:33 1.redo (重做) log 的功能:        用于数据恢复   2.redo log 特征: [特征]: 1)   记录数据块的变化(DML.D ...

  6. Oracle11g温习-第六章:控制文件

    2013年4月27日 星期六 10:33  .控制文件的功能和特点 1) [定义数据库当前物理状态] 2) [维护数据的一致性]  如果控制文件中的检查点与数据文件中的一致,则说明数据一致,可以启动到 ...

  7. Oracle11g温习-第十三章:索引

    2013年4月27日 星期六 10:46 1.索引(Index)的功能:对记录进行排序,加快表的查询速度  2.索引的分类  1)B-tree 索引(默认) a.在一个大表上 b.建立在重复值比较少的 ...

  8. Oracle11g温习-第五章:数据字典

    1.数据字典(Data dictionary)的功能 1)   central of oracle   database               每个oracle数据库的核心 2)   descr ...

  9. <构建之法>第十一章、十二章有感

    十一章:软件设计与实现 工作时要懂得平衡进度和质量.我一直有一个困扰:像我们团队这次做 男神女神配 社区交友网,我负责主页的设计及内容模块,有个队友负责网站的注册和登录模块,有个队友负责搜索模块,有个 ...

随机推荐

  1. 洛谷P2637第一次,第二次,成交! 模拟?DP?

    今天水来一天,就贴道水吧.. 原题>>https://www.luogu.org/problem/show?pid=2637<< 题目描述 因为奶牛们的节食运动(奶牛还节食?) ...

  2. 《C语言程序设计》指针篇<一>

    指针 指针是C语言的精华,同时也是其中的难点和重点,我在近日对这一部分内容进行了重新的研读,把其中的一些例子自己重新编写和理解了一遍.此篇博客的内容即是我自己对此书例子的一些理解和总结. 一.大问题: ...

  3. HashMap的实现原理-----哈希讲解

    哈希,英文名Hash.他就像是一个隔壁家的孩子一样,伴随着码工们的成长.听到他们的名字,我们都觉得很高大上. 在写程序的时候,一般我们都是这样被教育的:这个事情搞不定?用哈希呀! 在面试的时候,一般是 ...

  4. 针对list集合进行分页展示

    直接定义个工具类,代码如下: package com.jk51.modules.wechat.web.util; import java.util.Collections; import java.u ...

  5. VR外包公司—2016中国VR开发者论坛第一期

    由VR界网和暴风魔镜联合举办的2016中国VR开发者论坛第一期已于3月2日下午5点在吉林动画学院圆满落幕,本次论坛云集了VR相关领域的精英,邀请了VR社交<极乐王国>.暴风魔镜.南京睿悦. ...

  6. Add Two Numbers ,使用链表参数

    # Definition for singly-linked list. class ListNode(object): def __init__(self, x): self.val = x sel ...

  7. Oracle简介

    1.Oracle 数据库基于客户端/服务 2. Oracle认证 OCA:Oracle认证助理工程师,比较简单 OCP:Oracle认证专家 OCM:Oracle认证资深专家 3.Oracle 服务的 ...

  8. 记录结果再利用的"动态规划"

    2018-09-24 15:01:37 动态规划(DP: Dynamic Programming)是算法设计方法之一,在程序设计竞赛中经常被选作题材.在此,我们考察一些经典的DP问题,来看看DP究竟是 ...

  9. TP3.2.3框架与已有模板做结合

    具体实现步骤: a.  复制模板文件到View指定目录 b. 复制到css.img.js静态资源文件到系统指定目录 c. 把静态资源(css.img.js)文件的路径设置为"常量" ...

  10. (原创)PBS | SGE 智能任务投递系统monitor | python实现

    之前看到过高手写的一个monitor,用python面向对象实现的,依赖几个核心的python包,drmaa,zodb,理论上来说解决了所有的任务投递问题. 但是在复杂的集群环境下还是会经常出问题,这 ...