Oracle
 sql >> Database >  >> RDS >> Oracle

ORA-01097

Ogni tanto, una persona si imbatte in qualcosa che esiste da sempre ma è una nuova esperienza per loro. Proprio oggi, ho riscontrato l'errore ORA-1097 per la prima volta nella mia carriera. Ero in un database di prova e dovevo spegnerlo.

SQL> shutdown immediate
ORA-01097: cannot shutdown while in a transaction - commit or rollback first
La soluzione è ovvia. O esegui il commit della transazione o esegui il rollback e quindi posso procedere.
SQL> commit;

Commit complete.

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
Con un numero di errori così basso, questo deve essere in circolazione da molto tempo. In un primo momento sono stato colto alla sprovvista dall'errore. Cosa vuoi dire che non riesco a chiudere la mia istanza? Poi ho letto il messaggio di errore e ho capito cosa stava succedendo. Immagino che questo abbia senso. Oracle vuole sapere cosa fare con la tua transazione prima che possa iniziare l'arresto. Se esegui uno SHUTDOWN ABORT, Oracle non ti darà questo messaggio ma eseguirà il rollback della transazione sul ripristino dell'istanza. La morale della storia è che anche se sei in giro da molto tempo e hai visto molto, non l'hai visto Tutto.