`
sjk2013
  • 浏览: 2205032 次
文章分类
社区版块
存档分类
最新评论

undo系列学习之pub兄弟帖子的整理

 
阅读更多

提问者xmas171688

提问时间:2005-1-13 14:45:18

问题:

在下列2个表中
V$ROLLNAME,V$ROLLSTAT 
谁能帮我解释下 V$ROLLSTAT 的列 每列是干吗的。恳请帮忙!

主要是想知道 哪列是 回滚段大小 !


整理:

每列是干什么的,我想,官网给得很明了:http://docs.oracle.com/cd/B28359_01/server.111/b28320/dynviews_2143.htm#REFRN30210

V$ROLLSTAT中的常用列:

1)usn:回滚段标识符

2)rssize:回滚段默认大小

3)xacts:活动事务数

在一段时间内增量用到的列:
WRITES:回滚段写入数(单位:bytes)
SHRINKS:回滚段收缩次数
EXTENDS:回滚段扩展次数
WRAPS:回滚段翻转(wrap)次数
GETS:获取回滚段头次数
WAITS:回滚段头等待次数

通过usn,我们可以将v$rollname和v$rollstat连接起来,来查看更有意义的回滚段的统计信息。如:

SELECT n.name, s.extents, s.rssize, s.optsize, s.hwmsize, s.xacts, s.status
FROM v$rollname n, v$rollstat s
WHERE n.usn = s.usn;

注意:
  通过花费时间除以翻转次数,你可以得到一次回滚段翻转(wrap)的平均用时。此方法常用于在长查询中指定合适的回滚段大小以避免'Snapshot Too Old'错误。同时,通过查看extends和shrinks列可以看出optimal是否需要增加。

提问者一路随行

提问时间:2010-5-7 10:57:32

问题:

各位大侠,我想请教一下,那些操作可以回滚?commit后还可以回滚?那些操作会自动提交啊?


整理:

dml可以回滚
commit后不能回滚
ddl、dcl会自动提交

提问者jvkojvko

提问时间:2011-6-28 11:06:48

问题:

insert 数据了15个小时以后没有成功,然后手工停止了,然后现在回滚了一天一夜还没有好, 表还是被锁着,有好的解决办法没?


insert的数据量大概3000W


整理:

首先,我们须从这个问题中得到经验教训:大批量的数据插入,切记要每隔一段时间提交,控制事务的长度!否则,只能only wait。

提问者lyxing

提问时间:2009-1-18 08:54:51

问题:

服务器是红帽LINUX企业4,oracle9204,发现有一个数据库的回滚空间一直在增长,都用了98.63%了,不过也没有见有什么异常情况。会是哪里的问题呢?原来是1G的回滚,后来扩到2G,现在又快满了

整理:

原因:
1. 你存在大的事务需要回滚;
2. show parameter undo_retention ; --这种情况下减小undo_retention的值
3. 回滚段中内容说明一下:
insert 只记录rowid
update 只记录更新字段的旧值(前镜像)。--update太多
delete 产生最多的回滚,记录整行记录。 --delete太多

提问者lmin_432930

提问时间:2008-5-19 16:29:46

问题:

有关oracle回滚的问题不解,请帮忙回答

数据库为非归档模式,设其中一个表空间test包含了tt表;
步骤:
1、修改tt表内容,但是没有提交
2、将test表空间offline normal
3、switch logfile几次直到修改tt表的日志覆盖
4、执行rollback
5、switch logfile几次直到当前日志覆盖
6、将test表空间online
7、查询tt内容正常

问题:
1、将test表空间offline后,checkpoint将修改数据保存到数据文件;然后rollback,并switch清除日志,再将test表空间online后正常运行。
那么系统如何获知数据修改是否commit或rollback,有什么机制,或是我理解有问题?多谢! 


整理:

1、修改tt表内容,但是没有提交
2、将test表空间offline normal

offline 做了隐式 提交了

提问者:susuusus

提问时间:2004-11-23 09:30:35

问题:

我的系统是WINDOWS2000 数据库是ORACLE8.1.7 现在有这样一个问题: RBS表空间是2G 建4个回滚段,
现在的情况是每次开机启动ORACLE后RBS表空间占用率是99% 并且四个回滚段状态确是OFFLINE .每次都要手工ONLINE ,
我不明白为什么这样 并且想知道如何解决


整理:

1﹑建成公有段,在 init.ora 文件中 加入 rollback_segments = (r01, r02, r03, r04)

2﹑至于你的 rbs tablespace 有2G﹐我想可以建多些 rollback segment ﹐而 rollback segment 的占用率很高這個是由應用所決定的﹐那你多提交看能否降低它的使用率。不過這個并不影響你數據庫的使用。

分享到:
评论

相关推荐

    Undo

    Undo

    专题之Undo工作原理剖析

    专题之Undo工作原理剖析 相当专业的深入剖析 关于oracle 10g中Undo表空间的原理解析 值得看下

    redo undo framework source code

    redo undo framework source code redo undo framework source code

    C#做的简单的Undo、Redo功能的实现

    这个是做实验时,简单基本的Undo、Redo的操作、在一个winForm中实现,并且可以设置Undo的最大次数。包中除了项目外,还附有报告.

    12c 新特性-Temporary Undo

    介绍12c新特性Temporary Undo

    mfc support redo/undo

    实现redo,undo操作,来源于网络分享下。

    c# undo/redo例子

    c# undo/redo例子 支持文字的样式,颜色修改 动态进度条

    undo redo 原型设计

    cpp文件 undo redo 原型设计 部分代码 class Command { public: virtual BOOL UnDo() = 0; virtual BOOL ReDo() = 0; };

    oracle Undo表空间管理

    oracle Undo表空间管理,oracle 学习人员必看的不可缺少的资料。

    Oracle_Undo与Redo的通俗

    Oracle_Undo与Redo的通俗 Oracle中的Undo和Redo是两个非常重要的概念,它们都是Oracle数据库中事务管理和恢复机制的关键组件。Undo和Redo都是为了确保数据库的一致性和可靠性。 什么是REDO? REDO记录transaction...

    C# undo\redo框架

    Undo/Redo framework for editing controls in a Windows application 在Windows应用程序中编辑控件的撤销/重做框架。

    seata-oracle版undolog.sql

    oracle版本的undolog建表语句。 2019 年 1 月,阿里巴巴中间件团队发起了开源项目 Fescar(Fast & EaSy Commit And Rollback),和社区一起共建开源分布式事务解决方案。Fescar 的愿景是让分布式事务的使用像本地...

    在qt下实现了undo的代码

    在qt下实现了undo的代码

    UNDO表空间管理

    比较深入浅出的描述了基于oracle10g/11g的UNDO表空间的管理

    oracle 收缩undo表空间

    oracle 收缩undo表空间,需要收缩Undo表空间时特别有用。

    相克军 ORACLE 讲座 深度剖析UNDO段 笔记.doc

    UNDO表空间用来存放改变前的旧值。里面也有段区块,ORACLE自动建立生成、自动使用UNDO段。 作为高级别的DBA是需要知道ORACLE如何使用UNDO段的。 1 Undo表空间及管理方式 ORACLE开始一个事务的时候,会用到表空间。...

    oracle undo详解

    oracle数据库 关键表空间undo 的详细讲解 功能 和一些优势

    C#实现的undo/redo的window窗体

    针对一个window窗体实现了undo/redo功能,包括textBox,checkBox, listBox, comboBox, radioButton以及按钮焦点变化的实现。可能有些小bug思路仅供参考。完整的工程文件,VS打开即可运行,欢迎评论~ 详细说明参见...

    oracle undo

    oracle undo的更深一层的东西,能解决一定的undo问题。

Global site tag (gtag.js) - Google Analytics