WEB开发网
开发学院数据库Oracle Oracle回滚段概念用法规划及问题的解决 阅读

Oracle回滚段概念用法规划及问题的解决

 2007-01-21 12:01:36 来源:WEB开发网   
核心提示: 语法:DROP ROLLBACK SEGMENT rollback_segment;例:DROP ROLLBACK SEGMENT rbs01;查询回滚段的信息所用数据字典:DBA_ROLLBACK_SEGS可以查询的信息:回滚段的标识(SEGMENT_ID)、名称(SEGMENT_NAM

语法:

DROP ROLLBACK SEGMENT rollback_segment;

例:

DROP ROLLBACK SEGMENT rbs01;

查询回滚段的信息

所用数据字典:DBA_ROLLBACK_SEGS

可以查询的信息:回滚段的标识(SEGMENT_ID)、名称(SEGMENT_NAME)、所在表空间TABLESPACE_NAME)、类型(OWNER)、状态(STATUS)。

例:

SQL>SELECT segment_name,tablespace_name,owner,status FROM dba_rollback_segs;

回滚段的统计信息

数据字典:V$ROLLNAME,V$ROLLSTAT

例:

SQL>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;

回滚段的当前活动事务

数据字典:V$SESSION,V$TRANSACTION

例:

SQL>SELECT s.username,t.xidusn,t.ubafil,t.ubablk,t.used_ublk
    FROM v$session s,v$transaction t
    WHERE s.saddr=t.ses_addr;
   USERNAME  XIDUSN   UBAFIL   UBABLK  USED_UBLK
   -------  -------- ----------- ----------- -----------
   SYSTEM     2     2    7      1
   SCOTT      1     2    163     1
   2 rows selected.

回滚段的数量规划

对于OLTP系统,存在大量的小事务处理,一般建议:

数量多的小回滚段;每四个事务一个回滚段;每个回滚段不要超过十个事务。

对于批处理,一般建议:

少的大回滚段;每个事务一个回滚段。

回滚段的问题及解决方法

问题一:事务要求的回滚段空间不够,表现为表空间用满(ORA-01560错误),回滚段扩展到达参数MAXEXTENTS的值(ORA-01628)。

解决方法:向回滚段表空间添加文件或使已有的文件变大;增加MAXEXTENTS的值。

问题二:读一致性错误(ORA-01555 SNAPSHOT TOO OLD)

解决方法:增加MINEXTENTS的值,增加区的大小,设置一个高的OPTIMAL值。

上一页  1 2 3 4 5 

Tags:Oracle 概念 用法

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接