D:\>sqlplus test/test
SQL*Plus: Release 11.1.0.6.0 - Production on 星期三 06月 29 19:46:41 2016
Copyright (c) 1982, 2007, Oracle.  All rights reserved.

连接到:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL>
SQL> commit;  --提交
提交完成。
SQL> alter system flush buffer_cache;  --清缓冲
系统已更改。
SQL> get undo5
  1  select n.name,v.value from v$sesstat v,v$statname n
  2  where v.statistic#=n.statistic#
  3  and n.name in('undo change vector size','redo size','DBWR undo block writes','redo blocks written')
  4* and v.sid=(select distinct sid from v$mystat) 
  --获取当前会话的('undo change vector size','redo size','DBWR undo block writes','redoblocks written'
SQL> colu name for a30
SQL> /
NAME                                VALUE
------------------------------ ----------
DBWR undo block writes                  0
redo size                               0
redo blocks written                     0
undo change vector size                 0
SQL> get undo_redo
  1  select * from v$sysstat where name in('DBWR undo block writes',
  2*                                       'redo blocks written')
--获取当前系统的'DBWR undo block writes','redoblocks written'
SQL> /
STATISTIC# NAME                                CLASS      VALUE    STAT_ID
---------- ------------------------------ ---------- ---------- ----------
        75 DBWR undo block writes                  8        214  111270822
       139 redo blocks written                     2       3183 2391431605
SQL>  insert /*+ append*/ into &tab_new select * from &tab_old;   --执行direct path INSERT
输入 tab_new 的值:  bb
输入 tab_old 的值:  aa
原值    1:  insert /*+ append*/ into &tab_new select * from &tab_old
新值    1:  insert /*+ append*/ into bb select * from aa
已创建4行。
SQL>  select XIDUSN,xidslot,xidsqn,ubafil,ubablk,ubasqn,ubarec,USED_UBLK
  2     from v$transaction;  --获取当前事务回滚段
    XIDUSN    XIDSLOT     XIDSQN     UBAFIL     UBABLK     UBASQN     UBAREC
---------- ---------- ---------- ---------- ---------- ---------- ----------
 USED_UBLK
----------
         7          4        196          0          0          0          0
         1

SQL>  select name from v$rollname where usn=&usnn;   --获取当前事务回滚段名
输入 usnn 的值:  7
原值    1:  select name from v$rollname where usn=&usnn
新值    1:  select name from v$rollname where usn=7
NAME
------------------------------
_SYSSMU7$
SQL>  alter system dump undo header "&un";    --导出当前事务提交前回滚段头信息
输入 un 的值:  _SYSSMU7$
原值    1:  alter system dump undo header "&un"
新值    1:  alter system dump undo header "_SYSSMU7$"
系统已更改。
SQL> COMMIT;  --提交事务
提交完成。
SQL> ALTER SYSTEM FLUSH BUFFER_CACHE;  --刷新缓冲
系统已更改。
SQL> ALTER SYSTEM FLUSH BUFFER_CACHE;  --刷新缓冲
系统已更改。
SQL> GET UNDO5
  1  select n.name,v.value from v$sesstat v,v$statname n
  2  where v.statistic#=n.statistic#
  3  and n.name in('undo change vector size','redo size','DBWR undo block writes','redo blocks written')
  4* and v.sid=(select distinct sid from v$mystat)
--获取事务执行并提交后的'undo change vector size','redo size','DBWR undo block writes','redo blocks written'信息
SQL> /
NAME                                VALUE
------------------------------ ----------
DBWR undo block writes                  0
redo size                            4264
redo blocks written                     0
undo change vector size              1064
--注意:事务执行前undo change vector size:0,执行direct path INSERT后,其值:1064,前后差值:1064
SQL> GET UNDO_REDO
  1  select * from v$sysstat where name in('DBWR undo block writes',
  2*                                       'redo blocks written')
--获取当前系统DBWR undo block writes','redo blocks written'信息
SQL> /
STATISTIC# NAME                                CLASS      VALUE    STAT_ID
---------- ------------------------------ ---------- ---------- ----------
        75 DBWR undo block writes                  8        216  111270822
       139 redo blocks written                     2       3195 2391431605
--注意:事务执行前DBWR undo block writes:214 ,执行direct path INSERT后,其值:216,前后差值:2
SQL>  alter system dump undo header "&un";    --事务提交后再次导出事务使用回滚段头信息
输入 un 的值:  _SYSSMU7$
原值    1:  alter system dump undo header "&un"
新值    1:  alter system dump undo header "_SYSSMU7$"
系统已更改。
SQL> ALTER SYSTEM DUMP DATAFILE 2 BLOCK MIN 5391 BLOCK MAX 5393; 
--由导出事务提交后回滚段头信息确定,事务提交后xid对应的回滚段数据文件及块号:0x00801510 -->对应文件号(二进制前十位):2 块号(二进制后22位):5392
系统已更改。
SQL> select object_name from dba_objects where object_id=13697;  --由导出回滚段块中,相应事务XID对应的undo信息中,objn=13697,获取此UNDO信息对应的数据库对象为表BB,这正是我们在其上执行direct path INSERT操作的表;
OBJECT_NAME
--------------------------------------------------------------------------------
BB

测试APPEND INSERT是否产生UNDO信息的过程的更多相关文章

  1. [置顶] zabbix通过lykchat发送告警信息配置过程

    本文介绍zabbix通过lykchat发送告警信息配置过程. lykchat代码在https://github.com/lykops/lykchat/ 步骤 编写脚本 1).查看服务器端的配置文件et ...

  2. 一次接口压力测试qps极低原因分析及解决过程

    一次接口压力测试qps极低原因分析及解决过程 9-2日在做内部的性能测试相关培训时,发现注册接口压力测试qps极低(20左右),这个性能指标远不能达到上线标准 ,经过一系列调试,最后定位 98%的时间 ...

  3. python的append insert extend pop del remove使用

    对于 python 数组的操作,有插入和删除,下面介绍各个函数的功能: 插入 插入的函数有 append.insert .extend append append(i) 是在数组的末尾插入一个元素 i ...

  4. beta阶段测试基本概况对应机型硬件信息

    机型测试概况 测试结果 测试终端数 品牌分布分析 系统分布分析 分辨率分布 未执行 1 联想 4.0.3 480*800 安装失败 1 联想 4.2.1 480*854 通过 119 华为, 三星, ...

  5. 【RF库Collections测试】Insert Into List

    Name:Insert Into ListSource:Collections <test library>Arguments:[ list_ | index | value ]Inser ...

  6. Android -- junit测试框架,logcat获取log信息

    1. 相关概念 白盒测试: 知道程序源代码. 根据测试的粒度分为不同的类型   方法测试 function test         单元测试 unit test                 集成 ...

  7. del|append()|insert()|pop()|remove()|sort()|sorted|reverse()|len()|range()|min()|max()|sum()|[:]|区分两种列表复制|

    fruit = ['apple','banana','peach'] print fruit[0],fruit[-1] fruit_1 =[] fruit_1.append('orange') pri ...

  8. curl/wget 测试http请求的响应头信息

    1. wget –debug wget可以使用debug信息来查看信息头,如下: [root@localhost ~]# wget --debug http://192.168.1.101:8080/ ...

  9. python测试开发django-35.xadmin注册表信息

    前言 xadmin后台如果要对表的内容增删改查,跟之前的admin.py文件里面写注册表信息一样,需在admin.py同一级目录新建一个adminx.py的文件. 然后在adminx.py文件控制页面 ...

随机推荐

  1. netsh自动配置网络

    工作需要经常在多个网络中切换,每次都要配置ip等,写个脚本一键完成配置: netsh interface ip set address "本地连接" static "ip ...

  2. 1-bit and 2-bit Characters

    We have two special characters. The first character can be represented by one bit 0. The second char ...

  3. Struts,Spring,Hibernate三大框架的

    1.Hibernate工作原理及为什么要用? 原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Session 4.创建事务Transation 5.持 ...

  4. ffmpeg 在windows 上编译

    我在网上看到了一些资料,但是很多都不怎么全,而且 总会碰到这样或那样的问题,下面是我的一些经验,分享一下,当然也参考了大侠们的东西呵呵! 环境: OS:windows mingw +yasm+fmpe ...

  5. pyspider的一个诡异问题

    其Start_url两次抓取处理失败以后,其之后的所有抓取行为就不正常,似乎根本没有HTTP访问,我把该爬虫的taskdb清空,该爬虫爬取行为恢复正常.这个问题已提交pyspider官方,静待回答.

  6. JeeSite数据分页与翻页

    本文章介绍的是JeeSite开源项目二次开发时的一些笔记,对于没有使用过JeeSite的可以不用往下看了,因为下面的代码是跟JeeSite二次开发相关的代码,不做JeeSite的二次开发,以下代码对您 ...

  7. 【Java入门提高篇】Day16 Java异常处理(上)

    当当当当当当,各位看官,好久不见,甚是想念. 今天我们来聊聊Java里的一个小妖精,那就是异常. 什么是异常?什么是异常处理? 异常嘛,顾名思义就是不正常,(逃),是Java程序运行时,发生的预料之外 ...

  8. windows下注册表的操作

    原博:https://blog.csdn.net/denghubu/article/details/5765921 1.       注册表简介 注册表是为Windows NT和Windows95中所 ...

  9. 在win10下给vs2013配置opencv3.0

    opencv这玩意是真难搞呀. 先吐槽下..... 下面进入正文. 1准备工具: opencv3.0+vs2013 这里面不提供链接下载,自行谷歌百度. 2配置环境: a.打开下载好的opencv(解 ...

  10. 代码质量管理平台SonarQube的安装、配置与使用

    SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装.配置以及使用. 准备工作: 1.jdk(不再介绍) 2.sonarqube:ht ...