Taking on a new dba role for an Oracle 11gR2 2 node RAC, I've been told that about 9 times a year, in schedule with other software releases, we intentionally shutdown and restart the database. It causes all sorts of havoc - we have unbalanced nodes and jobs that ran fine before end up on a different node running poorly, re-caching of everything, etc. The database struggles for a few days as we put out new fires.

When I inquire as to why, it 'helped in the past' but nobody knows exactly why. Is there a valid reason? Is there a known memory leak somewhere in the Oracle RAC configuration that makes this needed? (That would be shocking.) A similar question for MS SQL Server indicates 'no', but Oracle is generally quite a bit different.


Short answer is NO. There is no such need to restart.


I have seen this become necessary if the database is being used by a poorly coded application. It's surprising how many "Enterprise" grade front ends are not able to let go of a session when the end user finishes.
If there are problems that this is addressing you should be able to see this in the application error logs or the database logs.

If you can't see any errors then there is no need to restart Oracle.

@miracle173 If you restart the application it releases the sessions but causes other application errors which usually result in the application's index of files needing to be rebuilt. If you kill the sessions on the database the application does not release these sessions and you have to restart it after a while or it will crash from too many sessions. This is a quietly acknowledged bug. We can upgrade the application or...restart the database.

@Phil madness might be preferable to the abuse of a database system on the altar of sloppy programming. Enterprise application, yes, built with good standards and an understanding of what databases do well; no.

  • if you want your application to release all sessions than restart the application but not the database! If you want remove some sessions from the database and are not able to accomplish this by the application kill the sessions but dow not restart the whole database! – miracle173 Nov 2 '12 at 0:28
  • 2
    Index rebuilds and advocating database restarts? Have you gone mad? – Philᵀᴹ Nov 5 '12 at 16:53
  • I don't understand how your application can handle a database restart (loosing all its sessions) but cannot handle its own restart nor the loss (killing) of some sessions. – miracle173 Nov 5 '12 at 18:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.