2010-11-08

ORA-30012

ORA-30012 Database Does Not Start With UNDO_MANAGEMENT=AUTO [ID 258506.1]



Symptoms

You have set undo_management=AUTO
You have set undo_tablespace = and either this tablespace does not exist or it is not created with 'undo' keyword.
i.e., you either dropped and did not recreate it or recreated it without specifying 'undo' keyword.
With this database will not start and throws:
ORA-30012: undo tablespace 'UNDOTBS' does not exist or of wrong type

Changes

undo tablespace was dropped and was not recreated or recreated without specifying 'undo' keyword.

Cause

undo_management is set to AUTO but the undo_tablespace does not exist or is not of type undo (i.e., contents column of dba_tablespaces does not show undo for this tablespace)

Solution

Do the following steps to open the database:

1. set undo_management=MANUAL in your init file.

2. connect "/ as sysdba" and startup the database using this init file (if not it will use the SPFILE by default).
eg.
SQL> startup pfile=

3. drop the tablespace if you wrongly created one without specifying "undo"

4. create a new undo tablespace:

create undo tablespace undotbs datafile '/DB1/undotbs01.dbf' size 1M reuse;

5. shutdown the database

6. change undo_management=AUTO in your init file and set undo_tablespace=
UNDOTBS (or whatever name you specified during the undo tablespace creation)

7. connect "/ as sysdba" and startup the database using this init file (as in step 2).

Now the database will open using the new undo tablespace and it would have created new undo segments in this tablespace.


Niciun comentariu:

Trimiteți un comentariu