We are porting the 8.0.4 DB onto the other server, which is running on 8.1.7, with other two instances. But the target server also having 8.0.4 installed on it. Pl suggest what would be the best feasible soln. Whether using a recreate controlfile or to export/import method? How to manage the two versions on the single server?. If i opt for control file recreation (w/o changing the DB name) then do i need to switch the log files on the source m/c and then copy the files?
If the source and target database are the same platform, you have a couple of choices.
1. Upgrade/migrate. You could move the 8.0.4 database to the new machine and then migrate to 8.1.7. You really don't have to mess around with the control file.
2. Export/import. Recreate a database on the new machine and then import all your data. The is by far the slowest method for a large database.
Having both versions on the same server is no problem, Just install oracle in different directories and make sure your environment variables indicate the correct oracle version.
Hi Jeff, In the first option provided by you, pl explain me how to move the DB. By move you mean, create DB in older version and exp/imp or recreate control file?. . Thanx
Don't worry about re-creating the control file.
By "move the database", I mean copy the files from server1 to server2 in the same location. For example, copy /u01/oradata/sid/data01.dbf from server1 and place it on /u01/oradata/sid/data01.dbf on server2.
If you can not move to the exact same relative location, you can start the database in mount mode and rename all the files from their old location to their new locations. For example, if you had to move the above file to /u02/oradata/sid/data01.dbf you would use:
SVRMGR> connect internal
SVRMGR> startup mount
SVRMGR> alter database rename file '/u01/oradata/sid/data01.dbf' to '/u02/oradata/sid/data02.dbf';
SVRMGR> alter database open;
Thanx a lot for the i/p.
Pl let me know is this method works, with diff versions of Oracle? In other words, my source is 8.0.4 and i copy the required datafiles and open the DB on 8.1.7 , will it work? Or any other relevant issues with this version change in source and target DB's?. And apart from datafiles and redo log files do i need to copy archive logs also?. If so do i need to switch manually the log files, before start copying these files?
Once your database is up on the new machine in 8.0.4, you would then migrate it using any of the standard migration methods. You would copy all files relevent to the operation of the database; data files, control files, redo log files, archived redo logs, password file, init.ora file, etc. This copy would happen when the database had been shutdown in either normal or immediate mode. You can manually swith the logfile if you want, but it is not necessary since the database will be down when you copy it.
Pl verify my check list for this process and correct if i missed something.
1. Perform a clean shutdown of the source DB (in my case 8.0.4 DB).
2. Copy all the datafles, control file,redolog files,parameter file,archive log files and pw files.
3.Restore all the files copied in step 2 on to the target m/c(installed with 8.0.4 version) on corresponding locations.
4. Edit control_files parameter in init.ora file on target m/c, if there is any change in control file location.(bit confusion in this step, where to copy the control files, pl explain)
5. set ORACLE_HOME and ORACLE_SID parameters on target m/c.(HP_UX 11.0 environment).
svrmgr>alter database rename datafile 'filename';
(if there is any change in the location of datafiles on
svrmgr>alter database open;
DB should open at this stage,right?
Then use migration tool to upgrade 8.0.4 to 8.1.7. Pl let me know whether these steps are proper. Thanx,
4. copy the control files to the same relative location. /u01/oradata/sid/control01.ctl becomes /u01/oradata/sid/control01.ctl on new server.
6. alter database rename file 'oldfile' to 'newfile';
Click Here to Expand Forum to Full Width