I have a backup from another database and I want to get it into a database on site. I have all the datafiles but I only want to use the datafiles that correspond to tablespaces that I have in a current database. Is this feasible?
Your procedure will only work if the old server and the new server are both the same OS platform. You also didn't mention how the backup was taken. If you took a hot backup or a cold backup, then it is possible to restore just part of this. Restore the files to the new server. Then do a STARTUP MOUNT on the database. A normal STARTUP won't work because the some of the datafiles are missing. So you'll have to issue the following for each of the missing datafiles:
ALTER DATABASE DATAFILE '/directory/filename' OFFLINE DROP;
Also, while you are in MOUNT mode you might need to rename the datafiles that did make it to the new server if the directory structure is different. If you restored from a hot backup, you'll need to apply recovery next, which means that you'll also need the archived redo logs. After all of this is done, issue ALTER DATABASE OPEN. Once the database is open, issue DROP TABLESPACE INCLUDING CONTENTS for those tablespace's who did not make the move.
Dig Deeper on Oracle database design and architecture
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.