Creating a missing datafile

2002-02-05 Thread Ross Collado


Env.
HP-UX 10.2
Oracle 7.1.6
Archivelog mode


Found this in the alert.log

Dictionary check beginning
File #41 found in data dictionary but not in controlfile.
Creating OFFLINE file 'MISSING0041' in the controlfile.
Dictionary check complete

I did a dump of the controlfile to trace and checked.  It had MISSING0041 in
it.  However, I did a find on this file and couldn't find it.  Does this
mean MISSING0041 was just updated in the controlfile and was not actually
created as a physical file?
I know the complete path/filename of what this MISSING0041 datafile should
be (it should be /u2/db/archive2_2.dbf).  This is actually the 3rd datafile
of ARCHIVE tablespace.  If this file existed then it would have been an easy
rename of datafile via ALTER TABLESPACE ... RENAME DATAFILE  But there
is no physical file to rename.
I don't think I can do a create a file via ALTER DATABASE CREATE
DATAFILE... in this case because the controlfile won't have the correct
path/filename of this datafile (it's got 'MISSING0041' SIZE 500M).
How do I go about recreating a physical file having the correct filename and
size?

TIA,

Ross

-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Ross Collado
  INET: [EMAIL PROTECTED]

Fat City Network Services-- (858) 538-5051  FAX: (858) 538-5051
San Diego, California-- Public Internet access / Mailing Lists

To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).



Re: Creating a missing datafile

2002-02-05 Thread Stephane Faroult

Ross Collado wrote:
 
 Env.
 HP-UX 10.2
 Oracle 7.1.6
 Archivelog mode
 
 Found this in the alert.log
 
 Dictionary check beginning
 File #41 found in data dictionary but not in controlfile.
 Creating OFFLINE file 'MISSING0041' in the controlfile.
 Dictionary check complete
 
 I did a dump of the controlfile to trace and checked.  It had MISSING0041 in
 it.  However, I did a find on this file and couldn't find it.  Does this
 mean MISSING0041 was just updated in the controlfile and was not actually
 created as a physical file?
 I know the complete path/filename of what this MISSING0041 datafile should
 be (it should be /u2/db/archive2_2.dbf).  This is actually the 3rd datafile
 of ARCHIVE tablespace.  If this file existed then it would have been an easy
 rename of datafile via ALTER TABLESPACE ... RENAME DATAFILE  But there
 is no physical file to rename.
 I don't think I can do a create a file via ALTER DATABASE CREATE
 DATAFILE... in this case because the controlfile won't have the correct
 path/filename of this datafile (it's got 'MISSING0041' SIZE 500M).
 How do I go about recreating a physical file having the correct filename and
 size?
 
 TIA,
 
 Ross
 

Ross,

   Do not be mistaken : RENAME DATAFILE is nothing more than an update
inside the control file. It does nothing the operating system knows of.
You can rename MISSING0041 to /u2/db/archive2_2.dbf. Concerning the
size, I guess that ALTER DATABASE ... RESIZE should fix it, although
this is little bit more dubious, since this command ACTUALLY extends
files. Perhaps you could resize it to a little more than the real
current size.
Another solution would be to recreate control files, by doing an ALTER
DATABASE BACKUP CONTROLFILE TO TRACE and editing the resulting trace
file to reinsert the proper file name. If your database is in a
relatively clean state (i.e. nothing in redo log files) it should be
safe.
Backup your database before attempting anything ... (control files
included)
-- 
Regards,

Stephane Faroult
Oriole Ltd
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Stephane Faroult
  INET: [EMAIL PROTECTED]

Fat City Network Services-- (858) 538-5051  FAX: (858) 538-5051
San Diego, California-- Public Internet access / Mailing Lists

To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).



Re: Creating a missing datafile

2002-02-05 Thread Deepak Thapliyal

Hi Ross,

have u by any chance restored a backupcontrol file
that was backedup before you added this datafile. 

Is this the case? If yes than what oracle is doing is
putting a placeholder entry for this file and calling
it missing file.. here is what u can do (assumes that
you have all the archivelogs available since this file
was created ..

restore the db from backup and mount it .. 

SQL select name from v$datafile where file#=41;

SQL ALTER DATABASE 
 CREATE DATAFILE  
'use the out of above sql'  as 
   '/u2/db/archive2_2.dbf';

SQL recover database using backup controlfile ;

Use Auto till it asks for non-existent arch (supply ur
online log) 

Media recovery complete after online log is applied

technically u should be able to open the db in
noresetlogs mode at this time .. however i have seen
that it does not .. so here is the workaround ..

SQL alter database backup controlfile to trace;
SQL create controlf file .. from ur trace
SQL recover database; -- takes one sec to complete
SQL Alter database open;

hth
Deepak
--- Ross Collado [EMAIL PROTECTED] wrote:
 
 Env.
 HP-UX 10.2
 Oracle 7.1.6
 Archivelog mode
 
 
 Found this in the alert.log
 
 Dictionary check beginning
 File #41 found in data dictionary but not in
 controlfile.
 Creating OFFLINE file 'MISSING0041' in the
 controlfile.
 Dictionary check complete
 
 I did a dump of the controlfile to trace and
 checked.  It had MISSING0041 in
 it.  However, I did a find on this file and couldn't
 find it.  Does this
 mean MISSING0041 was just updated in the controlfile
 and was not actually
 created as a physical file?
 I know the complete path/filename of what this
 MISSING0041 datafile should
 be (it should be /u2/db/archive2_2.dbf).  This is
 actually the 3rd datafile
 of ARCHIVE tablespace.  If this file existed then it
 would have been an easy
 rename of datafile via ALTER TABLESPACE ... RENAME
 DATAFILE  But there
 is no physical file to rename.
 I don't think I can do a create a file via ALTER
 DATABASE CREATE
 DATAFILE... in this case because the controlfile
 won't have the correct
 path/filename of this datafile (it's got
 'MISSING0041' SIZE 500M).
 How do I go about recreating a physical file having
 the correct filename and
 size?
 
 TIA,
 
 Ross
 
 -- 
 Please see the official ORACLE-L FAQ:
 http://www.orafaq.com
 -- 
 Author: Ross Collado
   INET: [EMAIL PROTECTED]
 
 Fat City Network Services-- (858) 538-5051  FAX:
 (858) 538-5051
 San Diego, California-- Public Internet
 access / Mailing Lists


 To REMOVE yourself from this mailing list, send an
 E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of
 'ListGuru') and in
 the message BODY, include a line containing: UNSUB
 ORACLE-L
 (or the name of mailing list you want to be removed
 from).  You may
 also send the HELP command for other information
 (like subscribing).


__
Do You Yahoo!?
Send FREE Valentine eCards with Yahoo! Greetings!
http://greetings.yahoo.com
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Deepak Thapliyal
  INET: [EMAIL PROTECTED]

Fat City Network Services-- (858) 538-5051  FAX: (858) 538-5051
San Diego, California-- Public Internet access / Mailing Lists

To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).



RE: Creating a missing datafile

2002-02-05 Thread Ross Collado

Thanks Deepak,

Slight problem though.  The database has been opened with RESETLOGS so
previous archive logs are useless.
v$recover_file reports this file# is offline/missing file.
I think my only other option is to drop then rebuild/recreate the tablespace
and import the objects in it from an export dump.

Ross

 -Original Message-
 From: Deepak Thapliyal [mailto:[EMAIL PROTECTED]]
 Sent: Wednesday, 6 February 2002 11:45
 To: Multiple recipients of list ORACLE-L
 Subject: Re: Creating a missing datafile
 
 
 Hi Ross,
 
 have u by any chance restored a backupcontrol file
 that was backedup before you added this datafile. 
 
 Is this the case? If yes than what oracle is doing is
 putting a placeholder entry for this file and calling
 it missing file.. here is what u can do (assumes that
 you have all the archivelogs available since this file
 was created ..
 
 restore the db from backup and mount it .. 
 
 SQL select name from v$datafile where file#=41;
 
 SQL ALTER DATABASE 
  CREATE DATAFILE  
 'use the out of above sql'  as 
'/u2/db/archive2_2.dbf';
 
 SQL recover database using backup controlfile ;
 
 Use Auto till it asks for non-existent arch (supply ur
 online log) 
 
 Media recovery complete after online log is applied
 
 technically u should be able to open the db in
 noresetlogs mode at this time .. however i have seen
 that it does not .. so here is the workaround ..
 
 SQL alter database backup controlfile to trace;
 SQL create controlf file .. from ur trace
 SQL recover database; -- takes one sec to complete
 SQL Alter database open;
 
 hth
 Deepak
 --- Ross Collado [EMAIL PROTECTED] wrote:
  
  Env.
  HP-UX 10.2
  Oracle 7.1.6
  Archivelog mode
  
  
  Found this in the alert.log
  
  Dictionary check beginning
  File #41 found in data dictionary but not in
  controlfile.
  Creating OFFLINE file 'MISSING0041' in the
  controlfile.
  Dictionary check complete
  
  I did a dump of the controlfile to trace and
  checked.  It had MISSING0041 in
  it.  However, I did a find on this file and couldn't
  find it.  Does this
  mean MISSING0041 was just updated in the controlfile
  and was not actually
  created as a physical file?
  I know the complete path/filename of what this
  MISSING0041 datafile should
  be (it should be /u2/db/archive2_2.dbf).  This is
  actually the 3rd datafile
  of ARCHIVE tablespace.  If this file existed then it
  would have been an easy
  rename of datafile via ALTER TABLESPACE ... RENAME
  DATAFILE  But there
  is no physical file to rename.
  I don't think I can do a create a file via ALTER
  DATABASE CREATE
  DATAFILE... in this case because the controlfile
  won't have the correct
  path/filename of this datafile (it's got
  'MISSING0041' SIZE 500M).
  How do I go about recreating a physical file having
  the correct filename and
  size?
  
  TIA,
  
  Ross
  
  -- 
  Please see the official ORACLE-L FAQ:
  http://www.orafaq.com
  -- 
  Author: Ross Collado
INET: [EMAIL PROTECTED]
  
  Fat City Network Services-- (858) 538-5051  FAX:
  (858) 538-5051
  San Diego, California-- Public Internet
  access / Mailing Lists
 
 
  To REMOVE yourself from this mailing list, send an
  E-Mail message
  to: [EMAIL PROTECTED] (note EXACT spelling of
  'ListGuru') and in
  the message BODY, include a line containing: UNSUB
  ORACLE-L
  (or the name of mailing list you want to be removed
  from).  You may
  also send the HELP command for other information
  (like subscribing).
 
 
 __
 Do You Yahoo!?
 Send FREE Valentine eCards with Yahoo! Greetings!
 http://greetings.yahoo.com
 -- 
 Please see the official ORACLE-L FAQ: http://www.orafaq.com
 -- 
 Author: Deepak Thapliyal
   INET: [EMAIL PROTECTED]
 
 Fat City Network Services-- (858) 538-5051  FAX: (858) 538-5051
 San Diego, California-- Public Internet access / Mailing Lists
 
 To REMOVE yourself from this mailing list, send an E-Mail message
 to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
 the message BODY, include a line containing: UNSUB ORACLE-L
 (or the name of mailing list you want to be removed from).  You may
 also send the HELP command for other information (like subscribing).
 
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Ross Collado
  INET: [EMAIL PROTECTED]

Fat City Network Services-- (858) 538-5051  FAX: (858) 538-5051
San Diego, California-- Public Internet access / Mailing Lists

To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP