Problém 14:
Původní databáze verze 10.2.0.3 byla odzálohovaná a obnovená na jiném serveru, kde je nainstalován software verze 10.2.0.4.
Po startu databáze píše chyby. viz alert.log
Analýza:
Alert.log
==========
SMON: enabling cache recovery
Thu Apr 29 00:38:28 2010
Errors in file c:\oracle\admin\arbes\udump\test_ora_1868.trc:
ORA-30012: undo tablespace ‚UNDOTBS1‘ does not exist or of wrong type

Thu Apr 29 00:38:28 2010
Error 30012 happened during db open, shutting down database
USER: terminating instance due to error 30012
Thu Apr 29 00:38:28 2010
Errors in file c:\oracle\admin\test\bdump\test_pmon_844.trc:
ORA-30012: Message 30012 not found; No message file for product=RDBMS, facility=ORA

Řešení:

ORA-30012: undo tablespace ‚UNDOTBS1‘ does not exist or of wrong type

V případě, že databáze má nastavený undo management jako automatický a undo datový soubor není k dispozici, musí se nastavit na manual.
ORA-30012: undo tablespace ‚UNDOTBS1‘ does not exist or of wrong type

startup upgrade
A poté spustit upgredovací skript ručně z sqlplus
@C:\oracle\ora102x64\RDBMS\ADMIN\catupgrd.sql

Jakmile skript doběhne zastavte databázi a nastartujte ji v normálníám režimu.
shutdown immediate
startup

Po startu, ale databáze vykazovala další chybu, tentokrát to značilo na problém s UNDO segmenty.
Thu Apr 29 10:23:38 2010
Errors in file c:\oracle\admin\test\bdump\test_j004_140.trc:
ORA-12012: error on auto execute of job 1350143
ORA-01552: cannot use system rollback segment for non-system tablespace ‚USER_DATA‘
ORA-06512: at „test_user.tabulka“, line 63
ORA-06512: at line 1

Řešením bylo přidat datový soubor ke stávajícímu UNDO tablespacu.
create undo tablespace UNDOTBS1 datafile ‚D:\oracle\oradata\undotbs02.dbf‘ size 2G;

Jakmile byla databáze správně nastartovaná, provedl jsem raději ještě kompilaci invalidních objektů pomocí skriptu utlrp.sql
@C:\oracle\ora102x64\RDBMS\ADMIN\utlrp.sql



Komentáře