ORA-01552 :非系统表空间‘XXXX’不能使用系统回退段
故障分析:
UNDO表空间数据文件受损,导致执行更新操作失败。
故障解决:
创建的新的undo表空间,置为 默认,AUTO,正常打开数据库。
Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.
C:\Documents and Settings\Administrator>sqlplus "/as sysdba"
SQL*Plus: Release 10.2.0.1.0 - Production on 星期二 8月 26 15:27:45 2014
Copyright (c) 1982, 2005, Oracle. All rights reserved.
连接到:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> select open_mode from v$database;
OPEN_MODE
----------
READ WRITE
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL> alter system set undo_management=auto scope=spfile;
系统已更改。
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 272629760 bytes
Fixed Size 1248476 bytes
Variable Size 88081188 bytes
Database Buffers 176160768 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
ORA-00607: 当更改数据块时出现内部错误
ORA-00600: 内部错误代码, 参数: [4194], [19], [13], [], [], [], [], []
SQL> shutdown abort
ORACLE 例程已经关闭。
SQL> conn /as sysdba
已连接到空闲例程。
SQL> startup mount
ORACLE 例程已经启动。
Total System Global Area 272629760 bytes
Fixed Size 1248476 bytes
Variable Size 88081188 bytes
Database Buffers 176160768 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL> alter system set undo_management=manual scope=spfile;
系统已更改。
SQL> shutdown immediate;
ORA-01109: 数据库未打开
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 272629760 bytes
Fixed Size 1248476 bytes
Variable Size 88081188 bytes
Database Buffers 176160768 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\SYSTEM01.DBF
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\UNDOTBS01.DBF
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\SYSAUX01.DBF
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\USERS01.DBF
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\EXAMPLE01.DBF
E:\ORACLE\PRODUCT\10.2.0\ORADATA\ORACLE\CCEN.ORA
已选择6行。
SQL> create undo tablespace undotbs2 datafile ‘E:\ORACLE\PRODUCT\10.2.0\ORADATA\
ORACLE\UNDOTBS02.dbf‘ size 200m;
表空间已创建。
SQL> show parameter undo;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL> alter system set undo_tablespace=undotbs2 scope=spfile;
系统已更改。
SQL> alter system set undo_management=auto scope=spfile;
系统已更改。
SQL> show parameter spfile;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string E:\ORACLE\PRODUCT\10.2.0\DB_1\
DATABASE\SPFILEORACLE.ORA
SQL> shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 272629760 bytes
Fixed Size 1248476 bytes
Variable Size 88081188 bytes
Database Buffers 176160768 bytes
Redo Buffers 7139328 bytes
数据库装载完毕。
数据库已经打开。
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS2
SQL>
ORA-01552 :非系统表空间 'xxxx'不能使用系统回退段