ORA-01552: 非系统表空间 'USERS' 不能使用系统回退段 的解决办法

出错现状:
    在dbvis中update一张表,报错: ORA-01552: 非系统表空间 'USERS' 不能使用系统回退段
进入sqlplus查看undo的配置

SQL>show parameter undo
NAME    TYPE    VALUE
---------------------------------
undo_management    string AUTO
undo_retention    integer    900
undo_tablespace    string    UNDTBS1

由于undo数据不是最紧要的,最关键是先要能把对数据库里面的数据做更新操作(开发在等着用),于是想到重建undo表空间.
create undo tablespace undotbs_mdc datafile 'E:\oradata\mdc\undotbs_mdc.dbf' size 10m reuse autoextend on next 10m maxsieze 2048m
指定要后面undo的数据存放在新的undo表空间中:
    SQL> alter system set undo_tablespace=UNDOTBS_MDC scope=spfile;
    SQL> alter system set undo_management=auto scope=spfile;

    然后启动数据库,选择scott用户底下先前自己创建的一张表,做update操作,这回成功.
    参考:
    http://blog.csdn.net/randyamor/archive/2008/09/25/2978624.aspx
    http://download.oracle.com/docs/cd/B19306_01/server.102/b14231/undo.htm#i1106355

你可能感兴趣的:(user)