估算事务使用回滚段的数量

原创 2004年07月09日 11:01:00

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

 

 

 

估算事务使用回滚段的数量

 

 

 

 

Microsoft Windows 2000 [Version 5.00.2195]

(C) 版权所有 1985-2000 Microsoft Corp.

 

C:/>sqlplus "/ as sysdba"

 

SQL*Plus: Release 9.2.0.1.0 - Production on 星期四 6 17 15:35:46 2004

 

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

 

 

连接到:

Oracle9i <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />Enterprise Edition Release 9.2.0.1.0 - Production

With the OLAP and Oracle Data Mining options

JServer Release 9.2.0.1.0 - Production

 

SQL> conn lunar/lunar

已连接。

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      27114

         2      26350

         3      31946

         4      26456

         5      26944

         6      41234

         7      32780

         8      27350

         9      33232

        10      26224

 

已选择11行。

 

SQL> create table tt

  2  (cc number);

 

表已创建。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      27114

         2      26350

         3      31946

         4      28222 ---------------改变了 1766 byte

         5      26944

         6      41234

         7      32780

         8      27350

         9      33232

        10      26224

 

已选择11行。

 

SQL> insert into tt values(1);

 

已创建 1 行。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      27220

         2      26568

         3      32052

         4      28304

         5      27162

         6      41340

         7      32998

         8      27456

         9      33286

        10      26412

 

已选择11行。

 

可见这个insert的操作总共使用了 1402 byte的回滚段空间。

 

 

SQL> update tt set cc=10;

 

已更新 1 行。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      27326

         2      26786

         3      32158

         4      28394

         5      27380

         6      41446

         7      33216

         8      27562

         9      33340

        10      26600

 

已选择11行。

 

可见这个update的操作总共使用了 1410 byte的回滚段空间

 

 

SQL> delete from tt where  cc=10;

 

已删除 1 行。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      29008

         2      28842

         3      33990

         4      28500

         5      29436

         6      43278

         7      35272

         8      29394

         9      34248

        10      28292

 

已选择11行。

 

可见这个delete的操作总共使用了 16052 byte的回滚段空间

 

 

 

SQL> truncate table tt;

 

表已截掉。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      30246

         2      29030

         3      34096

         4      28554

         5      29654

         6      43384

         7      35490

         8      29500

         9      34466

        10      28398

 

已选择11行。

 

可见这个truncate的操作总共使用了 18610 byte的回滚段空间

 

 

 

 

SQL> drop table tt;

 

表已丢弃。

 

SQL> select usn,writes from v$rollstat;

 

       USN     WRITES

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

         0       6780

         1      31734

         2      29268

         3      34510

         4      28554

         5      29654

         6      43384

         7      35490

         8      29500

         9      34466

        10      28398

 

已选择11行。

 

SQL>

 

可见这个drop 的操作总共使用了 18610 byte的回滚段空间

 

 

 

 

oracle redo回滚段详解

Undo是干嘛用的?                                             在介绍undo之前先说一下另外一个东西 transaction ,翻译成交易或事务。我...
  • huashnag
  • huashnag
  • 2013年01月08日 18:56
  • 1068

Spring 使用注解方式进行事务管理--注解回滚机制

使用步骤: 步骤一、在spring配置文件中引入命名空间  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xmlns:tx...
  • strutce
  • strutce
  • 2016年02月17日 09:25
  • 4480

大事务回滚估算

在系统上线、日常运维时,难免会出现由于SQL效率不佳,或者写错,导致出现回滚的现象;在大事务时,回滚常常耗时很久,如何较为准确得估算回滚的时间,可以帮助我们制定相应的计划...
  • zccgood002
  • zccgood002
  • 2017年03月25日 20:49
  • 91

第二十五讲--图解深入剖析一个事务的操作流程

事务ID: 当一个事务开始以后,oracle会给事务分配一个XID。            事务表: undo表空间的undo段的第一个数据块里面放了一个事务表,介于块大小的限制,最多可以放4...
  • chengonghao
  • chengonghao
  • 2016年03月22日 12:28
  • 750

innodb 回滚段内存结构

1、将undo页插入historylist时,如果是第一次插入,即该回滚段最早的事务,将相关信息保存到回滚段的内存结构中,即下面几个成员保存的是回滚段中最老事务的信息: trx_commit->tr...
  • yanzongshuai
  • yanzongshuai
  • 2017年05月07日 17:30
  • 407

关于SQL的事务回滚机制

程序员在编写应用程序的过程中大都会用到SQL执行语句,最基本的是增、删、改、查。试想一下当终端正在使用应用程序执行插入数据的动作时,遇到操作系统突然卡死、突然当机使有些数据插入了一半,或者是插入了错误...
  • smebear
  • smebear
  • 2013年08月02日 00:17
  • 1125

EntiryFramework中事务操作(三)事务回滚数据模型和数据库不对应问题

一、关于事务回滚数据模型和数据库不对应问题 1.在使用事务时,无论是使用DbContextTransaction,还是使用TransactionScope,如果在事务中出现异常而回滚,都有可能出现这种...
  • u011127019
  • u011127019
  • 2016年12月30日 11:54
  • 1339

Spring事务为什么不会自动回滚?Spring事务怎样才会自动回滚?事务自动回滚条件及手动回滚

在此,首先我们要明确RuntimeException与Exception之间的关系与他们分别的含义:        ①在Java中异常的基类为Throwable,他有两个子类Exception与Er...
  • qq_32331073
  • qq_32331073
  • 2017年08月01日 10:39
  • 1382

关于Spring事务回滚的问题

在Spring的配置文件中,如果数据源的defaultAutoCommit设置为True了,那么方法中如果自己捕获了异常,事务是不会回滚的,如果没有自己捕获异常则事务会回滚,如下例 比如配置文件里有...
  • guobing965816
  • guobing965816
  • 2014年04月29日 13:57
  • 2915

Oracle数据库回滚段操作

 1.新建undo表空间 SQL> create undo tablespace undotbs2 datafile 'E:\oracle\product\oradata\orcl\un  ...
  • programmelover
  • programmelover
  • 2014年10月20日 09:59
  • 1893
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:估算事务使用回滚段的数量
举报原因:
原因补充:

(最多只允许输入30个字)