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

原创 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的回滚段空间

 

 

 

 

高并发事务处理方案 秒杀的分析

我们要明白秒杀系统的难点:高并发 事务控制 快速响应。 大数据量的处理,难点就是在事务处理和复杂计算上。为了提高系统的响应速度,就要采用集群+多线程的处理方式。而数据库显然就成了整个系统的...
  • sjc106112
  • sjc106112
  • 2015-08-17 22:21:19
  • 4419

深入解析oracle回滚段

深入解析oracle的回滚段 日前在整理数据库表空间的是否,发现最大的数据文件来自回滚段。回滚段文件undotbs1的数据文件已经达到23G。 希望清理这部分数据,但一时又无从下手。于是决定深入了...
  • liqfyiyi
  • liqfyiyi
  • 2011-12-12 13:10:36
  • 1014

Oracle 手工清除回滚段的几种方法

关于回滚段的问题,之前也小整理过一个,参考:        Current online Redo 和 Undo 损坏的处理方法        http://blog.csdn.net/tianle...
  • tianlesoftware
  • tianlesoftware
  • 2011-07-31 01:02:36
  • 6936

ORACLE回滚段

最近数据负载奇高,检查undo表空间文件达到400G。 创建回滚段    语法:    CREATE [PUBLIC] ROLLBACK SEGMENT rollback_segment   ...
  • huaishu
  • huaishu
  • 2014-01-27 16:40:48
  • 719

从一个事务开始,回滚段,数据块的研究

21:57:36 kiwi@prod> select sid from v$mystat where rownum=1; SID ------------- 9 EMPNO EN...
  • u012422541
  • u012422541
  • 2015-01-09 18:56:46
  • 638

Oracle回滚段使用查询

大批量执行DML语句造成回滚段大量占用,又回退操作,如何直观查询数据回滚情况? 单机环境 查询回滚执行进度 select /*+ rule */s.sid,      r.nam...
  • u010586151
  • u010586151
  • 2017-08-21 14:06:18
  • 578

Oracle事务表实验详解

回滚段头中,有一项非常重要的信息,就是事务表。对事务表频繁的访问,可能会造成回滚段头的争用。了解什么样的操作会访问事务表,对于了解回滚段头争用的原因非常重要。下面我们来做一些实验来验证一下,什么样的操...
  • haiross
  • haiross
  • 2013-08-26 15:19:10
  • 581

innodb 日志 回滚段 & 崩溃恢复 实现详解

  • 2014年05月12日 14:36
  • 1.29MB
  • 下载

深入解析oracle的回滚段

  • 2009年02月11日 11:39
  • 125KB
  • 下载

Oracle—undo回滚段长时间不释放

Undo回滚段中Unexpired Block迟迟不释放掉,占用90%以上的undo表空间. 导致数据库事务等待严重. DML运行异常缓慢. JOB运行也有ora-01555错误. ...
  • u011822980
  • u011822980
  • 2017-03-01 10:24:29
  • 1598
收藏助手
不良信息举报
您举报文章:估算事务使用回滚段的数量
举报原因:
原因补充:

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