首页 > Linux操作系统 > Linux操作系统 > 关于ORACLE的UNDO表空间
1、查看UNDO表空间上回滚段得状态
select usn,xacts,status,rssize/1024/1024/1024,hwmsize/1024/1024/1024,shrinks from v$rollstat order by rssize;
更改回滚段得状态:ALTER ROLLBACK SEGMENT rollback_segment OFFLINE;(select * from v$rollname)
或者查询SELECT segment_name,tablespace_name,owner,status FROM dba_rollback_segs;
2、回收会滚段:ALTER ROLLBACK SEGMENT rbs01 SHRINK TO 2M(不知道大小就写TO integer);
删除回滚段:DROP ROLLBACK SEGMENT rollback_segment ----对应的数据字典DBA_ROLLBACK_SEGS
3、创建一个新的UNDO 表空间:create undo tablespace undotbs2 datafile '/u01/oradata/untbs2.dbf' size 10M
4、切换UNDO 表空间:alter system set undo_tablespace=undotbs2 scope=both;
加一个数据文件:alter tablespace undotbs2 add datafile '/dev/vgdata01/rlv_ora_log12';裸设备
5、回滚段当前活动的事物:SELECT s.username,t.xidusn,t.ubafil,t.ubablk,t.used_ublk FROM v$session s,v$transaction t
6、alter tablespace undotbs1 retention guarantee;
当把UNDO_RENTION设置为0时,开启undo retention 自动优化,为了保证最长事务的UNDO,系统自动最大限制地不去增加EXTENT
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/10129726/viewspace-707997/ ,如需转载,请注明出处,否则将追究法律责任。