We have a pretty big production database on Oracle 8i sun solaris (100+ GB).
For some test I need to have a complete copy of this database in another unix box.
What is the best way to do that.
Thanks in advance for your help
Printable View
We have a pretty big production database on Oracle 8i sun solaris (100+ GB).
For some test I need to have a complete copy of this database in another unix box.
What is the best way to do that.
Thanks in advance for your help
Copying all the files(data/control/redo/init.ora) that constitute your 100GB database to the server you wanted and modify dbname/controlfile/archive destination parameters in init.ora and set environment variables..and start the database...in mount mode and see the locations of your files from V$control/data/logfiles and rename the file locations with new file locations. that should take care off...
Otherwise exp/imp use schema by schema that you can easily handle with pipes to save dump files...
I feel first one is best approach..I just gave you the idea...follow the steps carefully and check for the syntax.
[Edited by sreddy on 12-22-2000 at 01:03 AM]
What is your suggestion if we have a standby database. Can we toggle the standby database to an online database ( take it off from backup mode temporary) and do our test then put it back to standby ??
If it is possible tell me exactly how we can do it.
Thanks
Most companies have standby databases because they need the ability to bring a database up very quickly should the production DB go down. What happens if your production DB goes down during your "test"? IMHO, bad idea.
You can do it, As marist89 suggest not a great idea as you are taking the risk, discarding the purpose of standby you implemented. Keep it in mind that your standby will always be in recovery mode.Of course this changes with 9i and you have got to wait for that.
Use named pipes to compress the export and ftp it over and import on to test database on new box. I don't have exact estimation of size export takes. I am exporting one big database using named pipes. If I get an idea of the compressed size of that database I can tell you.
But if I never mind to accept the risk to toggle the standby DB from recovery to onlie.
Can you tell me how exactly I can do that ? With oracle commant ? Do I need to restart the box? What happens to logs during no-standby exist? Can I impact them on standby again later ? How ?
Look at the Standby Database Concepts and Administration Guide for the version of Oracle you are using.
farrokhp,
Once you activite your standby database you cannot set it to standby mode again. You will have to build a new standby Database.
You can run a standby database in read-only mode and easily switch back to managed recovery mode.
What rmgirma says is TRUE. The only way it works is back and forth. Say A is live db and B is your standby. When A is down you will bring up B and after fixing the problem on A, you can make A standby... If there is a problem with B again... its same procedure. Kinda this goes in cycle...
But keep in mind that if you make Standby online, synchronisation with existing Production Db is gone, and you will have to rebuild. However, if you want to make it as Ready only this rules overrides as others said.
Make your own decision and act like the time it takes to rebuild the Stby and the time you can spare in case of Production Failure as no Stby is available right now
look metalink 90817.1 Graceful Switchover and Switchback of Oracle Standby Databases. it might help you.
So the bottom line is at least in Oracle 8i it is not correct to toggle the standby for performing some test .
But imp/exp a 100 GB+ DB even if I use pipes and all buffers stuff, I think it is still big deal.
Do I have to wait for 9i ??
You have the first option which I suggested... Copying all the files to the newbox and change the locations of the files in startup mount mode. your test database will be ready with in no time compare to solution of switching stand by/export with named pipe etc... I am not sure.. I feel this looks quick and easiet method...
Not sure, Check it up with other guys.. If you are using Legato Manager/vendor product for backup there could be a possibility you can copy/restore cold backup files directly from tape to the new server(brand new with no data on it). This makes your task much more simpler...
Update: if you use named pipe you can bring your compressed dump file size to One-tenth. I tried to export 16GB database using named pipe and dump size is 1.3 GB in compressed form. You have still limit of 2GB on 32-bit API servers.
[Edited by sreddy on 12-22-2000 at 03:23 PM]
does your database needs to be up 24X7? If so your only way would be exp/imp (if you dont have standby database of course)
If you're 24x7 and can't take a cold backup of the production database to make a clone, then why not take a cold backup of the stand by database and clone that?
That way, your stand by is down for minimal amount of time, your production stays online and you can restore the cold backup to your test server and bring it online. I think someone earlier had briefly described how to clone a database.
I think this would be your best bet.
Even if it is 24/7 support machine. Clonning is possible when the Database is online.