Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Shrinking Rollback Segemnts in a Proc

Re: Shrinking Rollback Segemnts in a Proc

From: <Kenneth>
Date: Thu, 02 Oct 2003 18:57:02 GMT
Message-ID: <3f7c6f06.1274202@news.inet.tele.dk>


On Thu, 2 Oct 2003 11:10:56 -0400, "paddy_nyr" <mpprpp_at_yahoo.com> wrote:

>I'm trying to curosr through the dba_rollback_segs, so I can shrink my
>rollback segements. Can this be done through a procedure and does anyone
>have some sample code? I'm running Oracle 8.1.7.
>
>Many Thanks
>
>

If you need to shrink your rbs' manually, your DB is almost certainly wrongly configured, but here goes :

create or replace procedure shrink_us authid current_user is
begin

for c_rec in (select 'alter rollback segment ' ||

                      segment_name             || 
                     ' shrink to 4m' as shrink_statement
                from dba_rollback_segs
               where segment_name != 'SYSTEM') loop
                               

  execute immediate c_rec.shrink_statement; end loop;

end shrink_us;
/

This won't work in 9i if you run Automatic Undo mode.

Received on Thu Oct 02 2003 - 13:57:02 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US