undo 段为手动管理模式,是因为做实验时,修改了undo段的管理模式。
1.查看undo段状态
SQL> col segment_name for a20
SQL> col owner for a10
SQL> col tablespace_name for a20
SQL> col status for a10
SQL> select SEGMENT_NAME,OWNER,TABLESPACE_NAME,STATUS from dba_rollback_segs;
SEGMENT_NAME OWNER TABLESPACE_NAME STATUS
-------------------- ---------- -------------------- ----------
SYSTEM SYS SYSTEM ONLINE
_SYSSMU1_592353410$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU2_967517682$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU3_1204390606$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU4_1003442803$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU5_538557934$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU6_2897970769$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU7_3517345427$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU8_3901294357$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU9_1735643689$ PUBLIC UNDOTBS1 OFFLINE
_SYSSMU10_4131489474 PUBLIC UNDOTBS1 OFFLINE
SEGMENT_NAME OWNER TABLESPACE_NAME STATUS
-------------------- ---------- -------------------- ----------
$
2.查看当前的undo段是哪一个?
SQL> select * from v$rollname;
USN NAME
---------- ------------------------------
0 SYSTEM
发现undo段为系统表空间
3.查看undo段的管理模式
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL>
SQL>
为手动管理模式,是因为做实验时,修改了undo段的管理模式。
4.切换管理模式为自动
SQL> alter system set undo_management=auto scope=spfile;
System altered.
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string MANUAL
undo_retention integer 900
undo_tablespace string UNDOTBS1
5.重新启动数据库后,查看状态,已改为AUTO模式。问题解决。
SQL> help shutdown
SHUTDOWN
--------
Shuts down a currently running Oracle Database instance, optionally
closing and dismounting a database.
SHUTDOWN [ABORT|IMMEDIATE|NORMAL|TRANSACTIONAL [LOCAL]]
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
SQL> startup
ORACLE instance started.
Total System Global Area 422670336 bytes
Fixed Size 1336960 bytes
Variable Size 314575232 bytes
Database Buffers 100663296 bytes
Redo Buffers 6094848 bytes
Database mounted.
Database opened.
SQL>
SQL> show parameter undo
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
undo_management string AUTO
undo_retention integer 900
undo_tablespace string UNDOTBS1
SQL>
SQL>
SQL> col owner for a10
SQL> col tablespace_name for a20
SQL> col status for a10
SQL> select SEGMENT_NAME,OWNER,TABLESPACE_NAME,STATUS from dba_rollback_segs;
SEGMENT_NAME OWNER TABLESPACE_NAME STATUS
-------------------- ---------- -------------------- ----------
SYSTEM SYS SYSTEM ONLINE
_SYSSMU1_592353410$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU2_967517682$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU3_1204390606$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU4_1003442803$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU5_538557934$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU6_2897970769$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU7_3517345427$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU8_3901294357$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU9_1735643689$ PUBLIC UNDOTBS1 ONLINE
_SYSSMU10_4131489474 PUBLIC UNDOTBS1 ONLINE
SEGMENT_NAME OWNER TABLESPACE_NAME STATUS
-------------------- ---------- -------------------- ----------
$
11 rows selected.
SQL> conn scott/tiger
Connected.
SQL> create table t1 as select * from emp;
Table created.
SQL>