OPTIMAL size for rollback segment in Oracle 8i

In our Database we have 13 Rollback segments & total size of all rollback segments is 33gb.
Used % it is showing 99.84%.
each rollback segment having near around 4gb of size.
I am in confusion to set OPTIMAL value for each rollback
segment.
can any one help me out reg this.
My roll back seg statistics are as fallows:
SEGMENT_NAME TABLESPACE_NAME WAITS SHRINKS WRAPS STATUS
R00 SYSTEM 0 0 12 ONLINE
RBS0 RBS 0 0 19 ONLINE
RBS01 RBS 0 0 16 ONLINE
RBS02 RBS 1 0 12 ONLINE
RBS03 RBS 0 0 11 ONLINE
RBS04 RBS 0 0 21 ONLINE
RBS05 RBS 1 0 22 ONLINE
RBS06 RBS 0 0 16 ONLINE
RBS07 RBS 0 0 15 ONLINE
RBS08 RBS 0 0 12 ONLINE
RBS09 RBS 1 0 19 ONLINE
SEGMENT_NAME TABLESPACE_NAME WAITS SHRINKS WRAPS STATUS
RBS12 RBS 0 0 13 ONLINE
RBS13 RBS 0 0 18 ONLINE
SYSTEM SYSTEM 0 0 0 ONLINE

Aman,
Definitely that would be a great approach to share the knowledge; but right now my notes are still in the shape of notes only; i have'nt tested them. I simply read forum and asktom and whenever i found good lines i copy and paste them and whenever i found the similar question in the forum i paste / repharase there in my own language and understanding (because till then i have tested and learnt them very well.)
Although i am highly obliged by your suggestation; let me that much knowledgable; so that i may run my own blog...!
Regards
Girish Sharma

Similar Messages

  • Want to decrease size for ROLLBACK Segments

    my database is oracle8i. Previous DBA increased rollback size to 18GB. i need space on my unix box.
    i want to reduce size of rollback segment and utilized this space for other purpose.
    This is my stats
    Tablespace Name FILE_NAME SIZE IN MB
    ROLLBACK /u01/rbsdata/rbs01.dbf 5000
    ROLLBACK /u01/rbsdata/rbs02.dbf 5000
    ROLLBACK /u01/rbsdata/rbs03.dbf 6000
    There are 12 rollback segments allocated to him
    SEGMENT_NAME FILE_NAME SIZE
    rbs0 /u01/rbsdata/rbs01.dbf 5000
    rbs12 /u01/rbsdata/rbs01.dbf 5000
    Now Could any one suggest to reduxe size with best performing and not affected my production database.
    Thanks
    Chetan

    Hi Chetan,
    You can adapt the following script as per your needs. It will search for all rollback segments other than 'SYSTEM' and construct the sql order to reduce the size of each rollback segment.
    connect user/*******@test
    SET SERVEROUTPUT ON size 50000
    SET HEAD OFF FEEDBACK OFF VERIFY OFF
    SPOOL D:\shrink.sql
    BEGIN
         -- RBS to be shrinked
         FOR toto IN (select Segment_Name from DBA_SEGMENTS
    where Segment_Type = 'ROLLBACK'
    and segment_name not in 'SYSTEM')
         LOOP
              DBMS_OUTPUT.PUT_LINE('alter rollback segment '||toto.Segment_Name||' '||'shrink to 60M;');
         END LOOP;
    END;
    SPOOL OFF
    SET HEAD ON FEEDBACK ON VERIFY ON
    spool d:\shrink.log
    select to_char(sysdate, 'dd/mm/yyyy hh24:mi:ss') "Shrinked" from dual;
    @D:\shrink.sql
    spool off
    Exit
    R.Tirou

  • How to check/find the size of current ROLLBACK segment in oracle 10g

    How to check/find the size of current ROLLBACK segment in oracle 10g ? Kindly help

    A rollback segment name like "_SYSSMU231$" is used when you have Automatic Undo Management enabled.
    The only relevant parameters are :
    1. UNDO_MANAGEMENT=AUTO
    2. UNDO_RETENTION=n minutes ==> this is what everyone should be interested in
    3. The sizes of the Undo Tablespace datafiles and whether AUTOEXTEND is ON or OFF
    No one should be interested in the size of a single undo segment when Automatic Undo Management is enabled.
    Possible causes of ORA-01555 errors in Automatic Undo Management
    a. UNDO_RETENTION is too low
    b. Undo tablespace is too small
    Hemant K Chitale

  • Optimal size for TEMP tablespace tempfiles

    Hi all,
    I've rumaged through Oracle documentation on the above topic but can't find the answer I'm seeking:
    How do you determine the optimal size for your tempfiles? Are there rules to guide one in this area? For example for a 50G database, how do you determine if it's 2G, 3G or 4G that's best for the database? What about a 500G database?
    Anwers will be appreciated.
    Regards

    It's the size of the sets, as you say. And in a data warehouse, the data sets can be very large. I'd say that in an OLTP database, then the useage of temp would (should) be low; but in a data warehouse, all bets are off: one-off end of month runs; director wants a monolithic report running; all that sort of DWH-related type of processing, which, by its nature, happens all the time. Similarly, a large number of users (e.g. users of, say, a Third Party BI tool) amy lead to lots of big sorts, owing to the ad hoc nature of their queries. Standard DWH stuff.
    I don't often see tiddly-widdly bits of SQL in data warehouses, like your SELECT COUNT(*) FROM tab$ example. It could be done, sure, but more likely will be bit, fat queries, which a DWH is designed to deal with. And a lot of temp may be required.
    From that 6-years old (but relevant) article (my emphasis): "For example, if you join two *large* tables, and Oracle cannot do the sort in memory (see SORT_AREA_SIZE initialisation parameter), *space will be allocated in a temporary tablespace for doing the sort operation*."
    Regards - Don Lewis

  • Quick Cleanup of Temporary Segments and also for  Rollback Segment

    Do you know a tip allowe to do a quick
    Cleanup of Temporary Segments and also for Rollback Segment; same time we
    need to wait about 2 hours to cleanup these tablespaces.
    we have to take action immediately to prevent other sessions to fail as well
    and we cannot bounce the Oracle instance. So, how do we get rid of this
    temporary segment as quickly as possible?
    Rq: the shrink commande same time not cleanup Rollback Segment, i don't know why (Ex:Alter rollback segment R01 shrink; )
    Thank you

    According to my knowledge the rollback tablespace can not be cleanup as you want because in the rollback segments are the transactions without commit and because of that you can not do that. The Rollback tablespace cleans up itself when pending transactions make commit.
    [email protected]
    Joel P�rez

  • How do you determine the optimal size for Mozilla Firefox?

    How do you determine the optimal size for cache in Mozilla
    Firefox? I am using Firefox 7.0.1 on a 64-bit Windows 7 Ultimate operating system with 3GB RAM and 300 GB hard drive, but I have other computers running Windows XP. If the answer doesn't apply to all current versions of Firefox on all supported Windows operating systems, please explain the differences. Is there a formula for calculating the best cache size?

    I found that the best idea is to let Firefox decide that itself.

  • Adobe SendNow - What is the optimal size for custom logos?

    I just tried to upload a custom logo (800x200) and it seemed to be stuck up in the top left corner, with a large amount of blank white screen.
    What is the optimal size for this please, and how do I centre a smaller logo?
    It is of course entirely possible I will need to make one in PS - not a problem - but the right sizes would be helpful info please.
    Many Thanks

    That is what I read too - but when I uploaded one it got tucked up in the top left corner of the "custom" setup thumbnail.
    Perhaps it is just a glitch in that dialogue, but it certainly looked as if there was a raft of space to the right & underneath.
    Still, probably Pilot Error so I will recheck - thank you Dave.

  • Optimal Parameter in rollback segment

    The OPTIMAL parameter assumes growth, followed by a shrink. If the rollback segment is sized properly, they should never grow.
    Is RollBack segment block size not fixed? then why shrink and sizing ?
    pls help me.
    Manish

    The OPTIMAL parameter assumes growth, followed by a
    shrink. If the rollback segment is sized properly,
    they should never grow.That's right, a properly sized rollback segment should never grow, or do it within a reasonable limit.
    Is RollBack segment block size not fixed? then why
    shrink and sizing ?This parameter doesn't refer to the size of the block, which is always fixed, but to the size of the rollback segment. A RBS will grow as far as the transaction continues. Once it grows it doesn't automatically shrink. So you have to manually issue the 'Alter ... shrink ..' command, this resizes the RBS to its minimum size (a couple of extents), If required RBS will grow again. In order for the RBS not to be shrinked to the minimum size and back to the average size, you declare de OPTIMAL value, so the shrink reduces the RBS to the average size directly when a shrink command is issued.
    By the way, why are you using RBS are you using an 8i or previous Oracle version?

  • How to get the size of rollback segments

    Hi,
    on which oracle table can I see which are the rollback segments and its own size?
    Thanks!

    doc questions like this one are best answered by querying the view DICT which is present in every release of Oracle (and which you of course -again- fail to mention)
    Sybrand Bakker
    Senior Oracle DBA

  • Where can I change the buffer size for LKM File to Oracle (EXTRENAL TABLE)?

    Hi all,
    I'd a problem on the buffer size the "LKM File to Oracle (EXTRENAL TABLE)" as follow:
    2801 : 72000 : java.sql.SQLException: ORA-12801: error signaled in parallel query server P000
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-29400: data cartridge error
    KUP-04020: found record longer than buffer size supported, 524288, in D:\OraHome_1\oracledi\demo\file\PARTIAL_SHPT_FIXED_NHF.dat
    Do you know where can I change the buffer size?
    Remarks: The size of the file is ~2Mb.
    Tao

    Hi,
    The behavior is explained in Bug 4304609 .
    You will encounter ORA-29400 & KUP-04020 errors if the RECORDSIZE clause in the access parameters for the ORACLE_LOADER access driver is larger than 10MB and you are loading records larger than 10MB. Which means their is a another limitation on read size of a record which is termed as granule size. If the default granule size is less then RECORDSIZE it limits the size of the read buffer to granule size.
    Use the pxxtgranule_size parameter to change the size of the granule to a number larger than the size specified for the read buffer.You can use below query to determine the current size of the granule.
    SELECT KSPFTCTXPN PARAMETER_NUMBER,
    KSPPINM PARAMETER_NAME,
    KSPPITY PARAMETER_TYPE,
    KSPFTCTXVL PARAMETER_VALUE,
    KSPFTCTXDF IS_DEFAULT,
    KSPPIFLG MODIFICATION_FLAG,
    KSPFTCTXVF VALUE_FLAG
    FROM X$KSPPI X, X$KSPPCV2 Y
    WHERE (X.INDX+1) = KSPFTCTXPN AND
    KSPPINM LIKE '%_px_xtgranule_size%';
    There is no 'ideal' or recommended value for pxxtgranule_size parameter, it is safe to increase it to work around this particular problem. You can set this parameter using ALTER SESSION/SYSTEM command.
    SQL> alter system set "_px_xtgranule_size"=10000;
    Thanks,
    Sutirtha

  • How to caluculate buffer size for import/exports in oracle

    Hi DBAS,
    how to caluculate buffer size for import exports,here is the formula but how can we use if there is a 100 of tables and datatypes,is the any query to find out rows_in_array ,maximum_row_size total schema and datbase
    buffer_size = rows_in_array maximum_row_size*
    Thanks,
    tmadugula

    http://download.oracle.com/docs/cd/B10501_01/server.920/a96652/ch01.htm
    Search "buffer"

  • Not able to see rollback segment in oracle 10g

    hi all
    I created rollback segment by using command
    CREATE ROLLBACK SEGMENT rs1 TABLESPACE rbs_ts
    and made it online but not able to see
    segment name by using
    select * from dba_rollback_segs
    Please help me
    Ragards
    Edited by: 174313 on Dec 1, 2008 3:19 PM

    You can start with the following links in 10g documentation.
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/mgmt_db.htm#sthref2230
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/logical.htm#CHDGJJEJ
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/logical.htm#CNCPT305

  • Appropriate size for Autoextending datafile in oracle 10g

    Hi,
    I am using Oracle 10g 10.2.0.3.0 on linux 64 bit with 16GB RAM, one thing i want to find out that i have my schema datafile, which set on autoextend, i have set next size to 100mb, if the file reaches to its full does it make us wait for long to create a place of 100mb or should i reduce the size from 100mb to 10mb.
    What should be the appropriate Next size in Autoextend for oracle database in my case, if there is a performance problem like login delay in schema due to increasing in size of datafile then how do i find out because i do not have database diagnostic tools.
    Because today there was a delay in login to the schema and EM was showing wait, but i could not find out that why the wait was there, when i check the datafile size it was 1203 MB , i thought it may be due to the extension of data file but how do i confirm this thing.
    In the table DBA_ADVISOR_FINDINGS it is giving following problem
    Problem PL/SQL execution consumed significant database time.
    Symptom Wait class "Network" was consuming significant database time.
    Problem Wait event "TCP Socket (KGAS)" in wait class "Network" was consuming significant database time.

    Slow connect is not related with datafile extension.
    Regarding Wait event "TCP Socket (KGAS)"
    Please read Metalink note 416451.1
    How fast is tnsping to database, ping to database server?

  • How can I use ken burns end transition frame to set cropping size for next segment?

    I am trying to figure out how to trivially take a large frame view, in a clip, and use a Ken Burns transition to "zoom" into a new view, and then grab the ending "frame" location and size and set that as the clipping rectangle in the next segment.  It seems like I should be able to just select the end fram view, type CMD-C to copy, and then select the next segment, choose "Clip", and type CMD-V to paste that "rectangle" as the clip.  This doesn't work, so I am looking for another way.  There's nothing in the popup menus or the main menus that I can find.
    Is this possible?

    I am afraid there is no easy way to this with Ken Burns. A better way may be to animate the Crop tool instead, using keyframes.

  • ROLLBACK SEGMENT의 MINEXTENTS를 20 이상으로 하면 좋은 이유

    제품 : ORACLE SERVER
    작성날짜 : 2003-06-19
    ROLLBACK SEGMENT의 MINEXTENTS를 20 이상으로 하면 좋은 이유
    =========================================================
    PURPOSE
    이 자료는 다음과 같은 주제에 대하여 소개하는 자료이다.
    이 문서는 database application의 요구 사항을 충족시키기 위해 고려되어
    져야 할 rollback segment tablespace 구성에 관한 내용을 담고 있다.
    Creating, Optimizing, and Understanding Rollback Segments
    -Rollback Segment 구성과 기록 방식
    -Transaction에 Rollback Segment를 할당하는 Oracle 내부 메커니즘
    -Rollback Segment 크기와 갯수
    -Rollback Segment의 크기와 갯수 결정을 위한 테스트
    -Rollback Segment extent의 크기와 갯수
    -Rollback Segment의 minextents를 20 이상으로 하면 좋은 이유?
    -Rollback Segment의 Optimal storage parameter와 Shrink
    Explanation
    Rollback Segment 구성과 기록 방식
    Rollback segment는 extent라 불리는 연속적인 여러 개의 block으로 구성된다.
    Rollback segment는 ordered circular 방식으로 extent를 쓰게 되는데,
    current extent가 full이 되면 next extent로 옮겨 가며 사용하게 된다.
    Transaction은 rollback segment 내의 current location에 record를 쓴 다음,
    record의 size 만큼 current pointer를 옮겨 간다.
    Rollback segment에 현재 record가 쓰여지고 있는 위치를 "Head"라고 한다.
    또한, "Tail"이란 용어는 rollback segment에서 가장 오래된 active
    transaction record의 시작 위치가 되는 부분을 말한다.
    Transaction에 Rollback Segment를 할당하는 Oracle 내부 메커니즘
    새로운 transaction이 rollback segment 를 요청하면, 각 rollback segment
    를 이용하고 있는 active transaction 갯수를 확인하여 가장 적은 갯수의
    active transaction 을 가진 rollback segment를 할당하게 된다.
    Rollback segment는 transaction load를 처리하기에 충분한 크기를 가져야
    하고, 필요한 만큼의 rollback segment를 사용할 수 있도록 적당한 갯수의
    rollback segment를 가져야 한다.
    1. 한 transaction은 단 하나의 rollback segment만을 사용할 수 있다.
    2. 같은 extent에 여러 transaction이 기록할 수 있다.
    3. Rollback segment의 Head는 Tail에 의해 현재 사용 중인 extent를
    침범하지 않는다.
    4. 링 형태로 구성되어 있는 rollback segment의 extent들은 다음 extent를
    찾을 때 절대 건너 뛰는 일이 없으며, 순서를 뒤바꾸어 사용하지도 않는다.
    5. Head가 next extent를 찾지 못하면, 새로운 extent를 추가로 할당하고,
    그 extent를 링 안에 포함시킨다.
    위와 같은 원리를 감안할 때, transaction size 뿐만 아니라 transaction
    time도 상당히 중요한 고려 사항이라는 것을 알 수 있다.
    Rollback Segment 크기와 갯수
    Rollback segment size가 충분한지 판단하는 기준은 transaction activity에
    직접적으로 영향을 받는다. 주로 일어나는 transaction activity에 근거하여
    rollback segment size를 결정하여야 하고, 잘 일어나지 않는 특수한 경우의
    큰 transaction이 문제라면 별도의 rollback segment로 관리되어야 한다.
    Transaction 발생 중 Head가 너무 빨리 wrap around 시켜서 tail을 catch하
    지 않도록 하여야 하며, 자주 변경되는 data에 대해 long-running query가
    수행되었을 경우 read-consistency가 유지될 수 있도록 rollback segment
    가 wrap around되지 않아야 한다.
    Rollback segment 갯수를 적당히 잡아야 하는 이유는 process들 간에
    contention을 방지하기 위함이고, V$WAITSTAT, V$ROLLSTAT, V$ROLLNAME
    view를 통해서 contention을 확인할 수 있으며, 조회문은 다음과 같다.
    sqlplus system/manager
    select rn.name, (rs.waits/rs.gets) rbs_header_wait_ratio
    from v$rollstat rs, v$rollname rn
    where rs.usn = rn.usn
    order by 1;
    위의 query에 의해 조회된 rbs_header_wait_ratio 가 0.01 보다 크면,
    rollback segment 갯수를 추가한다.
    Rollback Segment의 크기와 갯수 결정을 위한 테스트
    1. Rollback segment tablespace 생성
    2. 테스트하기 위해 생성할 Rollback segment 갯수 결정
    3. 같은 크기의 extent로 rollback segment 생성
    extent 갯수는 최대 확장 시 10 - 30 개 정도가 되도록 extent 크기를 결정
    4. Rollback segment의 minextents는 2이다.
    5. 테스트할 rollback segment와 system rollback segment만 online 상태로 한다.
    6. Transaction을 수행하고, 필요하면 application을 load한다.
    7. Rollback segment contention을 확인한다.
    8. Rollback segment가 최대 얼마까지 확장하는지 모니터링한다.
    Rollback Segment extent의 크기와 갯수
    Rollback segment가 자라나는 최대 사이즈를 알 수 있는데, 이 수치를
    "minimum coverage size"라 한다. 만약, contention이 발생한다면 rollback
    segment 갯수를 늘려 가면 테스트를 반복한다. 또한, extent 갯수가 10개
    미만이나 30개 이상이 될 필요가 있다면 extent 크기를 늘리거나 줄이면서
    테스트를 반복해 나가면 된다.
    Rollback segment의 extent 크기를 정할 때, 각 extent는 모두 같은 크기로
    생성할 것을 recommend한다.
    Rollback tablespace의 크기는 extent size의 배수로 지정한다.
    최적의 성능을 위한 rollback segment의 minextents는 20 이상이어야 한다.
    Rollback Segment의 minextents를 20 이상으로 하면 좋은 이유?
    Rollback segment는 dynamic하게 allocate되고, 더 이상 필요 없게 되었을 때
    (만약, Optimal parameter가 셋팅되어 있으면) 모두 commit된 extent에
    대해서는 optimal size 만큼만 남기고 release(deallocate)된다.
    Rollback segment가 적은 수의 extent를 가질 수록, space 할당/해제 시
    extent 수가 많을 때보다 큰 사이즈의 space가 할당되고, 해제된다.
    다음과 같은 예를 들어 보자.
    200M 정도의 rollback segment가 있는데, 100M 짜리 2개의 extent로 이루어져
    있다고 가정해보자. 이 rollback segment에 추가로 space를 할당해야 할 일이
    생겼을 때, 모든 rollback segment extent는 같은 크기를 가져야 한다는 점을
    감안할 때, 100M 짜리 extent를 하나 더 할당해야 할 것이다.
    이 결과 직전의 rollback segment 크기에 비하여 50% 만큼의 크기 증가분이
    생겨나게 된 것인데, 실제 필요로 하는 space보다 더 많은 space가 할당되었을
    것이다.
    이와 반대로, 10M 짜리 extent 20개로 구성된 200M 짜리 rollback segment를
    생각해보자.
    여기에 추가로 space를 할당해야 할 일이 생겼을 때, 10M 짜리 extent 하나만
    추가되면 되는 것이다.
    Rollback segment가 20개 또는 그 이상의 extent로 구성되어 있다면 extent가
    하나 더 증가할 경우가 생겼을 때, rollback segment의 전체 크기가 5% 이상은
    늘어나지 않는다는 것이다.
    즉, space의 할당과 해제 작업이 보다 유연하고 쉽게 일어날 수 있다.
    요약하면, rollback segment의 extent 갯수를 20 이상으로 잡으면 space
    할당과 해제가 "보다" 수월해진다.
    실제로 extent 갯수를 20 이상으로 잡았을 때, 처리 속도가 훨씬 빨라진다는
    사실이 많은 테스트 결과 밝혀졌다.
    한가지 확실한 사실은, space를 할당하고 해제하는 작업은 cost가 적게 드는
    작업이 아니라는 사실이다.
    실제로 extent가 할당/해제되는 작업이 일어날 때, performance가 저하되는
    일이 발생한다는 것이다.
    Extent 하나에 대한 cost는 별 문제가 안 된다고 할지라도, rollback segment
    는 끊임없이 space를 할당하고 해제하는 작업을 반복하기 때문에 작은 크기의
    extent를 갖는 것이 cost 측면에서 훨씬 효율적이라는 결론이다.
    Rollback Segment의 Optimal storage parameter와 Shrink
    Optimal은 deallocate 시에 rollback segment 내에 optimal size 만큼의
    extents를 유지하기 위해 사용하는 rollback segment storage parameter이다.
    다음과 같은 명령으로 사용한다.
    alter rollback segment r01 storage (optimal 1m);Optimal size는 storage 절 안에서 기술되어야 한다.
    Optimal size 이상이 되면, 모두 commit된 extent에 대해서는 optimal size
    만큼만 남기고 release된다.
    즉, optimal에서 지정한 크기 만큼만 rollback segment를 유지하겠다는
    뜻이며, 일정한 크기로 늘어났다가 다음번 tx이 해당 rbs를 취할 경우
    optimal size만큼 resize하는 option이다.
    rbs의 가장 최근에 사용된 extent가 다 차서 다른 extent를 요구할 때
    이 optimal size와 rbs size를 비교하게 되며, 만약 rbs size가 더 크다면
    active tx에 관여하지 않는 tail extent에 대하여 deallocation이 이루어진다.
    특정 rollback segment가 너무 큰 space를 차지해서 다른 rollback segment가
    extent를 발생할 수 있는 여유 공간을 부족하게 만들기 때문에 이를 극복하기
    위해서 optimal size를 지정할 필요가 있다.
    즉, optimal parameter를 지정하면 space availability 측면에서 효율적이다.
    다음과 같이 shrink 명령을 수행하는데, size를 지정하지 않으면 optimal
    size 만큼 shrink된다.
    alter rollback segment [rbs_name] shrink to [size];Shrink 명령 수행 후, 바로 줄어들지 않는 경우가 있는데,
    transaction이 있는 경우는 줄어들지 않고, transaction이 종료되면 줄어든다.
    Optimal이 적용되는 시간은 session이 빠져 나가고 약 5~10 분 정도 걸린다.
    적당한 OPTIMAL SIZE?
    => 20 ~ 30 extents 정도가 적당한데, batch job의 성격에 따라 size는 달라
    지며 각 optimal의 합이 datafile의 size를 넘어도 전혀 상관없다.
    Optimal size를 initial, next와 같게 주면 extent가 발생하는 매번 shrink가
    일어나므로 좋지 않다.
    RBS들의 평균 크기를 구하여 이것을 optimal 크기로 지정하여 사용하는 것을
    권한다.
    다음의 query를 이용하여 peak time에 rollback segment들의 평균 크기를 구한다.
    select initial_extent + next_extent * (extents-1) "Rollback_size", extents
    from dba_segments
    where segment_type ='ROLLBACK';
    이 크기의 평균값(bytes)을 rollback segment들의 optimal size로 사용할 수
    있다.
    주의할 사항은 너무 자주 shrink된다거나 optimal 값을 너무 작게 주면
    ora-1555 : snapshot too old error가 발생할 확률이 높아지므로,
    사용하지 않는 것이 좋을 수도 있고, 되도록 큰 값으로 셋팅해야 한다.
    Rollback segment의 optimal size를 확인할 수 있는 view는 V$ROLLSTAT
    이라는 dynamic view로서 OPTSIZE column에서 확인이 가능하다.
    Example
    none
    Reference Documents
    <Note:69464.1>

Maybe you are looking for