UNDO SEGMENT

±âÁ¸ÀÇ rollback segment¸¦ ÀÌ¿ëÇÏ¿© undo data¸¦ °ü¸®ÇÏ´ø manual Çü½Ä¿Ü¿¡ undo segment¿¡ ÀÇÇÏ¿© ÀÚµ¿À¸·Î °ü¸®ÇØ ÁÖ´Â auto ¹æ½Äµµ ÀÖ´Ù.
µÎ °¡Áö ¹æ½Ä ¸ðµÎ¸¦ »ç¿ëÇÒ ¼ö ÀÖÁö¸¸, undo segment¸¦ ÀÚµ¿À¸·Î »ý¼º, ÇÒ´ç, Æ©´×±îÁö ÇØÁÖ´Â auto ¹æ½ÄÀ» ±ÇÇÑ´Ù.

1)UNDO SEGMENTÀÇ °³³ä
• UNDO SEGMENT´Â DataÀÇ º¯°æ»çÇ×, Áï transactionÀÌ data¸¦ ¼öÁ¤Çϱâ ÀüÀÇ °ªÀ» ÀúÀåÇÔÀ¸·Î½á ¾ðÁ¦µçÁö ±âÁ¸ÀÇ data·Î recovery½ÃŰ´Â ¿ªÇÒÀ» ÇÑ´Ù.
• Áï, ³»ºÎÀûÀ¸·Î UNDO SEGMENT´Â º¯°æÀü data¿¡ ´ëÇÑ °ª°ú À§Ä¡ °ªÀÎ File ID, BLOCK ID, µîÀÇ Á¤º¸¸¦ ´ã°í ÀÖ´Ù.
• ÀÌ·¯ÇÑ UNDO ±â´É ¿Ü¿¡µµ »ç¿ëÀÚ¿¡°Ô READ-consistency(Àбâ Àϰü¼º)¸¦ Á¦°øÇÏ´Â ±â´Éµµ °¡Áö°í ÀÖ´Ù.
• ¶ÇÇÑ UNDO SEGMENT´Â ¿©·¯ °³ÀÇ transaction º¯°æ Á¤º¸¸¦ ±â·ÏÇÒ ¼ö ÀÖ´Ù. Áï, ÇϳªÀÇ UNDO SEGMENT¸¦ ¿©·¯ °³ÀÇ transactionÀÌ µ¿½Ã¿¡ »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, ÀÌ ¶§ ÀúÀåµÇ´Â ±âº» ´ÜÀ§´Â BLOCK ´ÜÀ§ÀÌ´Ù.

2)UNDO SEGMENTÀÇ ±â´É
a) transaction rollback b) transaction recovery c) READ-consistency(Àбâ Àϰü¼º) 3)UNDO SEGMENTÀÇ Á¾·ù
a) SYSTEM UNDO SEGMENT b) NON-SYSTEM UNDO SEGMENT c) DEFERRED UNDO SEGMENT 4)»ç¿ëÁßÀÎ UNDO SEGMENTÀÇ È®ÀÎ
a) SQL> SHOW PARAMETER undo_management;·Î È®ÀÎ b) DBA_ROLLBACK_SEGS ºä¸¦ »ç¿ëÇÏ¿© È®ÀÎ SQL> SHOW PARAMETER undo_management; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ undo_management string AUTO SQL> SELECT segment_name,tablespace_name FROM dba_rollback_segs; SEGMENT_NAME TABLESPACE_NAME ------------------------------ ------------------------------ SYSTEM SYSTEM _SYSSMU1$ UNDOTBS1 _SYSSMU2$ UNDOTBS1 _SYSSMU3$ UNDOTBS1 _SYSSMU4$ UNDOTBS1 _SYSSMU5$ UNDOTBS1 _SYSSMU6$ UNDOTBS1 _SYSSMU7$ UNDOTBS1 _SYSSMU8$ UNDOTBS1 _SYSSMU9$ UNDOTBS1 _SYSSMU10$ UNDOTBS1 11 rows selected. SQL>
UNDO SEGMENT °ü¸®¹æ¹ý °ü¸®ÀÚ°¡ UNDO tablspace¸¦ »ý¼ºÇØ ÁÖ°í ¸î ÆÄ¶ó¹ÌÅ͸¸ ¼³Á¤ÇØ ÁÖ¸é server°¡ undo segment¿¡ ´ëÇÑ °ü¸®¸¦ ¸ðµÎ ÀÚµ¿À¸·Î ÇÑ´Ù. Automatic UNDO management¸¦ À§ÇÏ¿© ¼³Á¤ÇØ¾ß ÇÒ ÆÄ¶ó¹ÌÅÍ´Â ´ÙÀ½°ú °°´Ù. UNDO_MANAGEMENT=AUTO UNDO_TABLESPACE=tablespace¸í UNDO_TABLESPACE´Â UNDO data¸¦ °ü¸®ÇÒ tablespace¸¦ ÁöÁ¤ÇØ ÁÖ´Â ÆÄ¶ó¹ÌÅÍ·Î ÃʱâÈ­ ÆÄ¸®¹ÌÅÍ ÆÄÀÏ initSID.ora¿¡¼­ Á¤ÇØ Áְųª ½Ã½ºÅÛ ±âµ¿Áß¿¡ ALTER SYSTEM SET ¹®À» »ç¿ëÇÏ¿© ¼³Á¤ÇØ ÁÙ ¼ö µµ ÀÖ´Ù. SQL> ALTER SYSTEM SET undo_tablespace= undotbs1;
1) Automatic Undo Management a) AUTOMATIC UNDO tablespaceÀÇ »ý¼º b) UNDO TablespaceÀÇ º¯°æ°ú switching c) UNDO TablespaceÀÇ »èÁ¦ ¡¼¿¹Á¦¡½ SQL> column file_name format a60; SQL> column tablespace_name format a10; SQL> select file_name,tablespace_name from dba_data_files; FILE_NAME TABLESPACE ------------------------------------------------------------ ---------- /export/home/oracle/app/oracle/oradata/orcl/users01.dbf USERS /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf SYSAUX /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf UNDOTBS1 /export/home/oracle/app/oracle/oradata/orcl/system01.dbf SYSTEM SQL> CREATE UNDO TABLESPACE undotbs2 2 datafile '/export/home/oracle/app/oracle/oradata/orcl/undotbs02.dbf' SIZE 30M 3 AUTOEXTEND ON; Tablespace created. SQL> select file_name,tablespace_name from dba_data_files; FILE_NAME TABLESPACE ------------------------------------------------------------ ---------- /export/home/oracle/app/oracle/oradata/orcl/users01.dbf USERS /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf SYSAUX /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf UNDOTBS1 /export/home/oracle/app/oracle/oradata/orcl/system01.dbf SYSTEM /export/home/oracle/app/oracle/oradata/orcl/undotbs02.dbf UNDOTBS2 ´ÙÀ½°ú °°ÀÌ UNDO TABLESPACE¿¡ DATAFILEÀ» ´õ Ãß°¡ÇÒ ¼ö ÀÖ´Ù. SQL> ALTER TABLESPACE undotbs2 2 ADD DATAFILE '/export/home/oracle/app/oracle/oradata/orcl/undotbs03.dbf' SIZE 30M 3 AUTOEXTEND ON; Tablespace altered. SQL> ALTER SYSTEM SET UNDO_TABLESPACE=undotbs2; System altered. SQL> SHOW PARAMETER UNDO_TABLESPACE; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ undo_tablespace string UNDOTBS2 SQL> SELECT tablespace_name,status FROM dba_rollback_segs; TABLESPACE STATUS ---------- ---------------- SYSTEM ONLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE UNDOTBS1 OFFLINE TABLESPACE STATUS ---------- ---------------- UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE UNDOTBS2 ONLINE 22 rows selected. SQL> ALTER SYSTEM SET UNDO_TABLESPACE=undotbs1; System altered. SQL> DROP TABLESPACE undotbs2 2 INCLUDING CONTENTS AND DATAFILES; Tablespace dropped. SQL> select file_name,tablespace_name from dba_data_files; FILE_NAME TABLESPACE ------------------------------------------------------------ ---------- /export/home/oracle/app/oracle/oradata/orcl/users01.dbf USERS /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf SYSAUX /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf UNDOTBS1 /export/home/oracle/app/oracle/oradata/orcl/system01.dbf SYSTEM SQL>
2) Manual Undo Management a) ROLLBACK SEGMENTÀÇ »ý¼º ¡¼Çü½Ä¡½ CREATE [PUBLIC] ROLLBACK SEGMENT rollback_segment¸í [TABLESPACE tablespace¸í] [STORAGE ([INITIAL Å©±â [K|M] ] [NEXT Å©±â [K|M] ] [MINEXTENTS Å©±â ] [MAXEXTENTS Å©±â | UNLIMITED ] [OPTIMAL {Å©±â [K|M] NULL} ] ) ¿©±â¼­ OPTIMALÀÇ Àǹ̴ ROLLBACK SEGMENT°¡ MAXEXTENTS·Î ÁöÁ¤µÈ Å©±â±îÁö Áõ°¡ÇÏ¿© »ç¿ëµÈ ÈÄ, »ç¿ëÀÌ ¿Ï·áµÇ¸é OPTIMAL¿¡¼­ ÁöÁ¤ÇÑ Å©±â·Î ROLLBACK SEGMENT°¡ ÀÚµ¿À¸·Î ÁÙ¾îµé°Ô µÈ´Ù. -- »ý¼º½Ã PUBLIC ¶Ç´Â PRIVATE·Î ÁöÁ¤ÇÒ ¼ö ÀÖÀ¸³ª ÀÌ ÈÄ¿¡´Â º¯°æÀÌ ºÒ°¡ÇÏ´Ù.(±âº»°ª=PRIVATE) -- MINEXTENTS´Â 2ÀÌ»óÀ̾î¾ß ÇÔ -- PCTINCREASE´Â ÁöÁ¤ÇÏÁö ¾Ê´Â´Ù. -- OPTIMALÀº MINEXTENTSº¸´Ù Å©°Å³ª °°¾Æ¾ß ÇÑ´Ù. b) ROLLBACK SEGMENTÀÇ ONLINE(Ȱ¼ºÈ­) »õ·Î ¸¸µç rollback segment´Â offline »óÅ À̹ǷΠonline »óÅ·Πº¯°æÇØ¾ß ÇÑ´Ù. online »óÅ·Πº¯°æÇÏ´Â µÎ °¡Áö ¹æ¹ý ¹æ¹ý1: parameter fileÀ» ¼öÁ¤ÇÏ¿© Ç×»ó online »óÅ·ΠÇÏ´Â ¹æ¹ý ROLLBACK_SEGMENT=(Online½Ãų rollback_segment¸í) ¹æ¹ý2: ALTER ROLLBACK SEGMENT rollback_segment¸í ONLINE;¿¡ ÀÇÇÑ ¹æ¹ý --ÀÌ ¹æ¹ýÀº ÇöÀçÀÇ session¿¡¼­¸¸ online»óÅ·ΠµÊ c) ROLLBACK SEGMENTÀÇ OFFLINE(ºñȰ¼ºÈ­) online»óŸ¦ offline »óÅ·Πº¯°æÇÏ´Â ¹æ¹ýÀº Ȱ¼ºÈ­ ¹æ¹ýÀÇ ¿ªÀ¸·Î µÎ°¡Áö ¹æ¹ýÀÌ ÀÖ´Ù. ¹æ¹ý1: parameter fileÀ» #À¸·Î ÁÖ¼®Ã³¸®ÇÑ´ÙÀ½ INSTANCE¸¦ Àç½ÃÀÛ ÇÑ´Ù. #ROLLBACK_SEGMENT=(Online½Ãų rollback_segment¸í) ¹æ¹ý2: ALTER ROLLBACK SEGMENT rollback_segment¸í OFFLINE;¿¡ ÀÇÇÑ ¹æ¹ý --ÀÌ ¹æ¹ýÀº ÇöÀçÀÇ session¿¡¼­¸¸ offline»óÅ·ΠµÊ d) ROLLBACK SEGMENTÀÇ ÇÒ´ç ¹æ¹ý1) Oracle Server°¡ ÀÚµ¿À¸·Î ROLLBACK SEGMENT¸¦ °Ë»çÇÏ¿© ÇÒ´çÇϰųª, ¹æ¹ý2) transaction¿¡ ƯÁ¤ ROLLBACK SEGMENT¸¦ ÁöÁ¤ÇÒ ¼ö µµ ÀÖ´Ù. SQL> SET TRANSACTION USE ROLLBACK SEGMENT ÁöÁ¤ÇÒ ROLLBACK_SEGMENT¸í; e) ROLLBACK SEGMENTÀÇ STORAGE º¯°æ ´ÙÀ½°ú °°Àº Çü½ÄÀ» »ç¿ëÇÏ¿© storage ÀýÀ» º¯°æÇÒ ¼ö ÀÖ´Ù. ALTER ROLLBACK SEGMENT rollback_segment¸í STORAGE ( [NEXT Á¤¼ö [K|M] ] [MINEXTENTS Á¤¼ö ] [MAXEXTENTS Á¤¼ö | UNLIMITED ] [OPTIMAL {Á¤¼ö [K|M] NULL} ] ) -- INITIAL °ªÀº ¼öÁ¤ÇÒ ¼ö ¾ø±â ¶§¹®¿¡ À̸¦ º¯°æÇÏ·Á¸é, ROLLBACK SEGMENT¸¦ »èÁ¦ÈÄ ´Ù½Ã »ý¼ºÇÑ´Ù.
f) ROLLBACK SEGMENTÀÇ ¼ºÀå
--transactionÀÌ ¾²±â¸¦ °è¼ÓÇÏ¿© ÇöÀç ÇÒ´çµÈ EXTENT¸¦ ¸ðµÎ ä¿ì¸é OracleÀº ¹Ù·Î ´ÙÀ½ ROLLBACK SEGMENTÀÇ EXTENT°¡ ºñȰ¼ºÈ­ ÀÎÁö È®ÀÎÇÑ´Ù.
-- ´ÙÀ½ EXTENT°¡ ºñȰ¼ºÈ­ µÇ¾î ÀÖ´Â °æ¿ì transactionÀº ´ÙÀ½ EXTENT¸¦ Ȱ¼ºÈ­ ½ÃŰ°í ¾²±â¸¦ °è¼ÓÇÑ´Ù. ±×·¯³ª ´ÙÀ½ EXTENT°¡ Ȱ¼ºÈ­ µÇ¾î ÀÖ°í transactionÀÇ µ¥ÀÌÅͰ¡ µé¾î ÀÖ¾î »ç¿ëÇÒ ¼ö ¾øÀ¸¸é oracleÀº ±× ´ÙÀ½ ¶Ç´Â ´Ù¸¥ ºñȰ¼ºÈ­ µÇ¾î ÀÖ´Â EXTENT°¡ ÀÖ´õ¶óµµ »õ·Î¿î EXTENT¸¦ ÇÒ´çÇÏ¿© »ç¿ëÇÑ´Ù
-- OracleÀº EXTENT ¼ö°¡ MAXEXTENTS parameter¿¡ ¼³Á¤µÈ °ª¿¡ µµ´ÞÇÒ ¶§±îÁö ROLLBACK SEGMENT¿¡ »õ·Î¿î EXTENT¸¦ ÇÒ´çÇÑ´Ù.

±×¸²¿¡¼­ °¡µæÂù 4¹ø EXTENT°¡ ºó EXTENT¸¦ ã±â À§ÇÏ¿© 1¹ø EXTENT¸¦ È®ÀÎÇßÀ¸³ª, ´Ù¸¥ transactionÀÌ »ç¿ëÁßÀΠȰ¼ºÈ­ »óÅÂÀÎ °ÍÀ» È®ÀÎÇÑ ÈÄ ¿À¸¥ÂÊ ±×¸²Ã³·³ 4¹ø EXTENT ÀÚ¸®¿¡ »õ·Î¿î EXTENTÀÎ 5¹øÀ» Ãß°¡·Î ÇÒ´çÇÑ´Ù. À̶§ 2¹ø EXTENTÀÇ »óŰ¡ ºñ¾î ÀÖ´Â ºñȰ¼ºÈ­ »óŶó ÇÒÁö¶óµµ 1¹ø EXTENT¸¦ °Ç³Ê ¶Ù¾î ÇÒ´ç ÇÒ ¼ö ¾ø´Ù.

1¹ø EXTENT°¡ °è¼Ó Ȱ¼ºÈ­ »óŶó¸é MAXEXTENTS¿¡ ÁöÁ¤ÇÑ Å©±â±îÁö °è¼ÓÇØ¼­ EXTENT°¡ Áõ°¡µÇ¾î ÇÒ´ç µÈ´Ù. °á±¹ transactionÀÌ Á¾·áµÇ±â Àü±îÁö´Â °è¼ÓÇØ¼­ EXTENT¸¦ ÇÒ´çÇÏ¿© MAXEXTENTS·Î ÁöÁ¤µÈ Å©±â±îÁö °è¼ÓÇØ¼­ Áõ°¡µÈ´Ù.
ÇÑ °³ÀÇ transaction ¶§¹®¿¡ Àüü EXTENTÀÇ Å©±â°¡ Áõ°¡ÇÑ´Ù¸é, °ø°£ Ȱ¿ë¸é¿¡¼­ ºñÈ¿À²ÀûÀ̸ç, À̰ÍÀ» ¹æÁöÇϱâ À§ÇÏ¿© database °ü¸®ÀÚ´Â ¸ð´ÏÅ͸µÀ» ÅëÇØ¼­ »ç¿ëÀÚ¿¡°Ô ¾Ë¸° ÈÄ transactionÀ» °­Á¦·Î Á¾·á½ÃÄÑ¾ß ÇÑ´Ù.


 g) EXTENT ÇÒ´ç ÇØÁ¦
ROLLBACK SEGMENT¿¡ OPTIMAL °ªÀÌ ÁöÁ¤µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ´ÙÀ½°ú °°ÀÌ »ç¿ëÀÚÀÇ ROLLBACK SEGMENTÀÇ EXTENT¸¦ ÇØÁ¦ÇÒ ¼ö ÀÖ´Ù.

	ALTER ROLLBACK SEGMENT rollback_segment¸í
	SHRINK [TO Á¤¼ö [K|M]];

-- ¿©±â¼­ 'Á¤¼ö'¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀ¸¸é OPTIMAL¿¡¼­ ÁöÁ¤ÇÑ °ª±îÁö ÇÒ´çÀ» ÇØÁ¦ÇÑ´Ù.
h) SNAPSHOT TOO OLD
ROLLBACK SEGMENT¿Í °ü·ÃµÈ error¸Þ½ÃÁö·Î transactionÀÌ Á¾·áµÇ°í ºñȰ¼ºÈ­ »óÅ¿¡ ÀÖ´Â EXTENT´Â ÇÒ´çÇØÁ¦µÇ¾î ´Ù¸¥ transaction¿¡°Ô ÁÖ¾îÁø´Ù.
ÀÌ ¶§ Àç»ç¿ëµÉ °¡´É¼ºÀÌ ³·Àº EXTENT´Â ³ªÁß¿¡ ȸ¼öµÇ´Âµ¥, ȸ¼öµÈ EXTENT´Â ´Ù¸¥ transaction¿¡ ÀÇÇØ »õ·Î¿î °ªÀÌ overwriteµÈ´Ù.
±×·¯³ª »ç¿ëÀÚ°¡ transactionÀ» Ãë¼ÒÇÏ¿© ROLLBACK Á¤º¸¸¦ ¿ä±¸Çߴµ¥, ±× transactionÀº ÀÌ¹Ì Á¾·áµÇ°í ´Ù¸¥ transactionÀÇ Á¤º¸°¡ ±â·ÏµÇ°Å³ª ¶Ç´Â oracle server¿¡ ÀÇÇØ¼­ ȸ¼öµÈ »óŶó¸é oracle server´Â ã´Â Á¤º¸°¡ ¾ø´Â °ÍÀ» È®ÀÎÇÏ°í º¸³»´Â ¸Þ½ÃÁöÀÌ´Ù.


 i) ROLLBACK SEGMENTÀÇ »èÁ¦
ROLLBACK SEGMENT¸¦ »èÁ¦Çϱâ À§Çؼ­ ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.
	DROP ROLLBACK SEGMENT rollback_segment¸í;

-- ROLLBACK SEGMENT´Â offline »óÅ¿¡¼­¸¸ »èÁ¦µÈ´Ù.

SQL> sqlplus '/as sysdba'
SQL> column tablespace_name format a10;
SQL> select tablespace_name,initial_extent,next_extent,min_extents,
  2  max_extents from dba_rollback_segs;
 
TABLESPACE INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS
---------- -------------- ----------- ----------- -----------
SYSTEM             114688                       1       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
UNDOTBS1           131072                       2       32765
 
12 rows selected.
 
SQL> select segment_name,status from dba_rollback_segs;
 
SEGMENT_NAME                   STATUS
------------------------------ ----------------
SYSTEM                         ONLINE
_SYSSMU1$                      ONLINE
_SYSSMU2$                      ONLINE
_SYSSMU3$                      ONLINE
_SYSSMU4$                      ONLINE
_SYSSMU5$                      ONLINE
_SYSSMU6$                      ONLINE
_SYSSMU7$                      ONLINE
_SYSSMU8$                      ONLINE
_SYSSMU9$                      ONLINE
_SYSSMU10$                     ONLINE
_SYSSMU22$                     ONLINE
 
12 rows selected.
 
SQL> column file_name format a60;
SQL> column tablespace_name format a15;
SQL> select tablespace_name,file_name from dba_data_files;
 
TABLESPACE FILE_NAME
--------------- ------------------------------------------------------------
USERS           /export/home/oracle/app/oracle/oradata/orcl/users01.dbf
SYSAUX          /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1        /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf
SYSTEM          /export/home/oracle/app/oracle/oradata/orcl/system01.dbf
 
SQL>
SQL> create tablespace rollback_tab1
  2  datafile '/export/home/oracle/app/oracle/oradata/orcl/rbtbs01.dbf' size 1M;
 
Tablespace created.
 
SQL> create tablespace rollback_tab2
  2  datafile '/export/home/oracle/app/oracle/oradata/orcl/rbtbs02.dbf' size 1M;
 
Tablespace created.
 
SQL> select tablespace_name,file_name from dba_data_files;
 
TABLESPACE_NAME FILE_NAME
--------------- ------------------------------------------------------------
USERS           /export/home/oracle/app/oracle/oradata/orcl/users01.dbf
SYSAUX          /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1        /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf
SYSTEM          /export/home/oracle/app/oracle/oradata/orcl/system01.dbf
ROLLBACK_TAB1   /export/home/oracle/app/oracle/oradata/orcl/rbtbs01.dbf
ROLLBACK_TAB2   /export/home/oracle/app/oracle/oradata/orcl/rbtbs02.dbf
 
6 rows selected.
 
SQL> select tablespace_name,initial_extent,next_extent,min_extents,max_extents
  2  FROM dba_rollback_segs;
 
TABLESPACE_NAME INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS
--------------- -------------- ----------- ----------- -----------
SYSTEM                  114688                       1       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
UNDOTBS1                131072                       2       32765
 
12 rows selected.
 
SQL> create rollback segment rollback1;
 
Rollback segment created.
 
SQL> create rollback segment rollback2
  2  tablespace rollback_tab2
  3  storage (initial 40k
  4           next 40k
  5           minextents 20
  6           maxextents 505
  7           optimal 800k);
 
Rollback segment created.
 
SQL> alter rollback segment rollback2 ONLINE;
 
Rollback segment altered.

SQL> set transaction use rollback segment rollback2;
 
Transaction set.
 
SQL> select segment_name,status from dba_rollback_segs;
 
SEGMENT_NAME                   STATUS
------------------------------ ----------------
SYSTEM                         ONLINE
_SYSSMU1$                      ONLINE
_SYSSMU2$                      ONLINE
_SYSSMU3$                      ONLINE
_SYSSMU4$                      ONLINE
_SYSSMU5$                      ONLINE
_SYSSMU6$                      ONLINE
_SYSSMU7$                      ONLINE
_SYSSMU8$                      ONLINE
_SYSSMU9$                      ONLINE
_SYSSMU10$                     ONLINE
_SYSSMU22$                     ONLINE
 
12 rows selected.
 
SQL> alter rollback segment rollback1
  2  storage(minextents 15 maxextents 600);
 
Rollback segment altered.
 
SQL> alter rollback segment rollback1
  2  SHRINK;
 
Rollback segment altered.
 
SQL> drop rollback segment rollback2;
 
Rollback segment dropped.
 
SQL> drop rollback segment rollback1;
 
Rollback segment dropped.
 
SQL> drop tablespace rollback_tab1 including contents and datafiles;
 
Tablespace dropped.
 
SQL> drop tablespace rollback_tab2 including contents and datafiles;
 
Tablespace dropped.
 
SQL> select tablespace_name,file_name from dba_data_files;
 
TABLESPACE_NAME FILE_NAME
--------------- ------------------------------------------------------------
USERS           /export/home/oracle/app/oracle/oradata/orcl/users01.dbf
SYSAUX          /export/home/oracle/app/oracle/oradata/orcl/sysaux01.dbf
UNDOTBS1        /export/home/oracle/app/oracle/oradata/orcl/undotbs01.dbf
SYSTEM          /export/home/oracle/app/oracle/oradata/orcl/system01.dbf
 
SQL>

v$rollname v$rollstat v$session v$transaction