oracle 9i 回滚段的建立

1  oracle enterprise console 设置  undo_management 为 MANAUL
   在初始化文件oracle\ora92\database\SPFILEORCL.ORA文件中undo_management的值为'MANUAL'

2  在 system表空间上随便建立一个回滚段
-----------------------------------------------
==============
ORA-1552 cannot use system rollback segment for non-system tablespace
===============
SQL> CREATE ROLLBACK SEGMENT rbs0
  2  TABLESPACE local_rbs
  3  STORAGE (INITIAL 100k NEXT 100k MINEXTENTS 2);
CREATE ROLLBACK SEGMENT rbs0
*
ERROR at line 1:
ORA-01552: cannot use system rollback segment for non-system tablespace
'LOCAL_RBS'


解决
=========
在system表空间或者其他字典管理表空间创建一个回滚段

   SQL> CREATE ROLLBACK SEGMENT rbs_dummy
     2  TABLESPACE system
     3  STORAGE (INITIAL 10k NEXT 10k MINEXTENTS 2);
   
   Rollback segment created.

   SQL> ALTER ROLLBACK SEGMENT rbs_dummy ONLINE;

   Rollback segment altered.

   SQL> CREATE ROLLBACK SEGMENT rbs0
     2  TABLESPACE local_rbs
     3  STORAGE (INITIAL 100k NEXT 100k MINEXTENTS 2);

   Rollback segment created.

   SQL> ALTER ROLLBACK SEGMENT rbs0 ONLINE;

   Rollback segment altered.

-----------------------------------------------

3  在其他表空间上建立回回滚段

create undo tablespace UNDO_TBS1
datafile 'C:\oracle\oradata\ora9i\undotbs01.dbf'
size 200m

在创建表空间后,先关闭数据库,再把UNDO_TABLESAPCE参数添加到初始化参数文件里。这几项是这样的
undo_management='AUTO'
undo_tablespace='UNDO_TBS1'

最后重起库就可以啦。


参阅 http://www.cnoug.org/viewthread.php?tid=62906
posted @ 2006-04-20 18:06  Alvin  阅读(510)  评论(0)    收藏  举报