Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: shutdown abort
> Jeremiah Wilton <jeremiah_at_wolfenet.com> wrote:
> >
> > A common misconception holds that shutdown abort is somehow more
> > dangerous or reckless than the other shutdown modes, and can result in
> > data being lost. This is not the case.
<... snip>
Joel Garry wrote:
>
> This is correct as far as it goes, but it does not go far enough. The
> goof that I've seen with this is with unix system shutdowns. People
> think that a shutdown abort is the same as just killing off all the
> processes, and it is. What winds up happening is that operators do a
> shutdown abort or just shut down the machine without shutting down
> Oracle. This incorrectly assumes that all things that are considered
> written to disk actually are. So you wind up with incorrect or undone
> updates in the header files of the database, and when the recovery
> process starts up when Oracle is trying to come up, it either is fooled
> by the disordered roll forward and corrupts the db, or asks for media
> recovery that is impossible. Much, much more time is wasted until
> (or in some cases, if) the DBA can figure this out once than all the
> waiting for a proper shutdowns will ever require. So don't get into any
> shutdown abort habits.
I'm not sure I understand the specific technical problem you are referring to here. The whole point of a checkpoint is that it is not complete and valid for a file until the operating system has reported successful writeout of the blocks that represent that checkpoint, both in the file headers and bodies. Similarly, the whole point of a commit is that it does not return for a transaction until the operating system has reported successful writeout of the contents of the log buffer.
Knowing these two facts, it can be said that the types of corruption or
disorder that you describe could never happen unless there were a
serious malfunction at the operating system or disk controller level. If
such a malfunction did exist, wherein the disk subsystem failed to write
blocks that the operating system had reported written, it would wreak
havok upon the database regardless of the Oracle shutdown mode.
--
Jeremiah
Received on Tue Dec 07 1999 - 17:39:34 CST