龙空技术网

一文总结Oracle UNDO表空间日常维护常用命令

波波说运维 164

前言:

而今你们对“oracle日常维护”大致比较看重,我们都想要知道一些“oracle日常维护”的相关知识。那么小编同时在网络上收集了一些关于“oracle日常维护””的相关知识,希望小伙伴们能喜欢,朋友们一起来学习一下吧!

概述

今天抽空总结下undo表空间中常用的一些维护命令,仅供参考。

1、查看undo表空间undotbs1的属性

select b.tablespace_name,AUTOEXTENSIBLE,RETENTION from dba_tablespaces a,dba_data_files b where a.TABLESPACE_NAME=b.TABLESPACE_NAME andb.TABLESPACE_NAME='UNDOTBS1';
2、查看各个回退段的使用信息
select a.name,b.extents,b.rssize,b.writes,b.xacts,b.wraps from v$rollname a,v$rollstat b where a.usn=b.usn;
3、确定哪些用户正在使用undo段
select a.username,b.name,c.used_ublk from v$session a,v$rollname b,v$transaction c where a.saddr=c.ses_addr and b.usn=c.xidusn; 
4、每秒生成的UNDO量
SELECT (SUM(undoblks))/ SUM((end_time - begin_time) * 86400) FROM v$undostat;

或者可以看下AWR报告中的Undo Statistics部分。

5、当前undo表空间使用状态

 SELECT DISTINCT STATUS,SUM(BYTES),COUNT(*) FROM DBA_UNDO_EXTENTS GROUP BY STATUS;
6、查看活动事务v$transaction
SELECT XID AS "txn_id", XIDUSN AS "undo_seg", USED_UBLK "used_undo_blocks", XIDSLOT AS "slot", XIDSQN AS "seq", STATUS AS "txn_status"  FROM V$TRANSACTION;

后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下!

标签: #oracle日常维护