I have this problem and it's been going on for weeks now. Every night the database go down for cold backup and every morning I have to recover one or two datafiles b/c they are in RECOVER status, but the database is opened ok.
Here is the command I recover the datafile:
RECOVER DATAFILE 'C:\ORADATA\ORACLE\...DBF'
ALTER DATABASE DATAFILE 'C:\ORADATA\ORACLE\...DBF' ONLINE;
when I recover the datafiles, I didn't have to shutdown the database and mount it, I just leave the database open and apply the above queries.
1. I would think my datafiles was in the RECOVER status b/c the database was starting up while that datafiles still being backed up. I did ask the network folks to extend the down time of the database so that it will have enough time to backup and startup the database clean. But the problem get worst and worst. at first, it's only happened once or twice a week, but now I have to recover them every day.
2. What if one day, one of the data file is the SYSTEM datafiles, will the database crash completely??? and I can't even mount or open database??? Is it possible for my database open with the SYSTEM datafiles need to be recovered ???
Can someone give me some advises of what happened and what do I need to do to fix this porblem.
Is this occuring on the same file/s or randomly on any file. Secondly I am assuming that a script runs your backups. It should shut down, backup, then startup up the database/application. Are you sure that your database is actually getting backed up well. My concern is that this file/s may be calling for recovery because of inconsistency between them and controlfile SCN.
Make sure you are not doing SHUTDOWN ABORT
before starting the backup. Should be at least "shutdown immediate"
Even if you do "shutdown abort" do "startup" again then "shutdown immediate" do the backup then "startup" again.
NB Your database should be in a consistent state (ie controlfile in sync with datafiles - a clean shutdown) before you do your cold backup.
Hope this helps.
Life is what is happening today while you were planning tomorrow.