Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Database Recovery
<abc_at_iom.com> wrote in message
news:3d5fd811.325087451_at_news.sf.sbcglobal.net...
>
> Ok, here's a scenario:
>
> There is a database--call it "MyDB" on server "A" Server A is Oracle
> 9i, Release 2 MyDb has never been backed up.
> However, all the files pertaining to that database (control, data,
> redo) have been copied to a safe place in another folder on that
> server.
You mean, you have a backup.
>
> Disaster strikes. The database server software installation is
> hopelessly screwed. No hope in hell of getting it reinstalled on that
> server.
>
> Fortunately, there's Server B! It has Oracle 9i Release 2 as well.
> In fact, it's the exact same installation as Server A--only this
> server works. The only instance running on Server B is some test db.
> I want Server B to "See" my original database, "MyDB". I copy the
> original physical files from the original database in question over to
> this new Server B.
>
You mean, you do a restore onto a second machine.
> Now the question: How do I get Server B to recognize this new
> database?
You start an instance. If these machines are NT, you create a service first (and a password file) by running oradim. If this is a unix box, you set your environment variables (such as ORACLE_SID), modify your init.ora so that it points to the location of the controlfile, and issue the startup MOUNT command. It has to be 'MOUNT', because your controlfile needs adjusting -it thinks the datafiles are where they used to be on your first machine. You sit there issuing 'alter database rename file 'x' to 'y'; comands so that it becomes aware of their locations on the new machine.
You then either try 'alter database open', or you issue that 'recover database' command. It depends on how your backup was taken (whether it was done hot or cold) and whether you have archives available.
>I'm sure it has something to do with RECOVER, RMAN, etc.
> But from reading the docs, all these commands assume that I have an
> instance up and running for this database I want to recover. I don't
> yet , of course, because Server B doesn't know that this MyDB even
> exists yet.
>
> In short, how do I go from having raw Database files on a server to an
> actual running instance?
>
> For those of you who are familiar with SQL Server 2000, this is like
> the Attach/Detach command. In this case I would ATTACH this database
> and bring it on-line. But as you know, SQL Server and Oracle are two
> different animals.
They certainly are: what you call a database in SQL Server 2000 is merely a schema (or perhaps a tablespace) in Oracle. So, before anyone else tells you in less friendly terms, let me advise against trying to make comparisons and point-to-point matches between the two products. They are about as similar as two completely dissimilar things in a pod.
You *ought* to know how to start an instance... it's pretty fundamental. But if all you've ever used are GUI tools such as OEM, all the work needed to make that happen has been hidden from you.
But to receive advice on how to do it, you need to be (a) more concise and (b) more precise. All this talk about "machine A" and "machine B" isn't very helpful. Whenever you post here, include specific Oracle version and operating system version. Instructions vary wildly depending on both.
If you are on Windows, you are going to need to know about oradim. Hi thee to http://technet.oracle.com and become a registered member, and start reading the doco. on it. Open a DOS window, and type oradim /? at the command prompt.
Post back with the specifics, and we can go through it.
Regards
HJR
>
> Any help appreciated.
Received on Sun Aug 18 2002 - 14:38:00 CDT
![]() |
![]() |