Labels

Showing posts with label Cloning Database. Show all posts
Showing posts with label Cloning Database. Show all posts

Monday, January 18, 2010

mannual coning of oracle 10g database in window machine.

######################################################################3

-Mannually Creating one database from another database in windows machine
Assume the Old database:- orcl
Assume the new database:-orclnew

NOTE:- Do not user any special character for the new database name.

1)OLD database:-
-login as sys user
U:\>sqlplus system@orcl

SQL*Plus: Release 10.1.0.2.0 - Production on Mon Jan 18 11:28:56 2010

Copyright (c) 1982, 2004, Oracle. All rights reserved.

Enter password:

Connected to:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL>archive log list;


2)SQL>create pfile from spfile;
File created.
check the contol file path
SQL>show parameter pfile;
Result:-
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string C:\ORACLE\PRODUCT\10.1.0\DB_1\
DATABASE\SPFILEORCL.ORA

3)SQL>alter database backup controlfile to trace;
Result:-Database altered

This creates a file in the trace file directory.
The file usually has the extension '.trc' and will be located either in the directory defined by the parameter 'user_dump_dest',
or if this parameter is undefined it will be in $ORACLE_HOME/rdbms/log. Edit this file with your favourite editor and remove the crud.
Then rename it as "ctrlorclnew.sql," where orclnew will be the ORACLE_SID of the copied database.Save the file D:\orclnew\ctrlorclnew.sql

Modify The Script Created In The Previous Step.This may look like below.This would create the control file script.


CREATE CONTROLFILE SET DATABASE orclnew RESETLOGS ARCHIVELOGMAXLOGFILES 16

MAXLOG

MEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 292

LOGFILE

GROUP 1 ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\REDO01.LOG’ SIZE 50M,

GROUP 2 ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\REDO02.LOG’ SIZE 50M,

GROUP 3 ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\REDO03.LOG’ SIZE 50M

– STANDBY LOGFILE

DATAFILE

‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\SYSTEM01.DBF’,

‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\UNDOTBS01.DBF’,

‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\SYSAUX01.DBF’,

‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\USERS01.DBF’,

‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\EXAMPLE01.DBF’

CHARACTER SET TR8MSWIN1254

;

4)Create the pfile. This file may look like this. Change the oracle SID name and make create the folder structure according to the pfile
D:\oracle\product\10.1.0\db_1\database\INITorclnew.ORA
background_dump_dest='D:\oracle\product\10.1.0\admin\orclnew\bdump'
compatible='10.1.0.2.0'
control_files="D:\oracle\product\10.1.0\oradata\orclnew\control01.ctl", "D:\oracle\product\10.1.0\oradata\orclnew\control02.ctl", "D:\oracle\product\10.1.0\oradata\orclnew\control03.ctl"
core_dump_dest='D:\oracle\product\10.1.0\admin\orclnew\cdump'
db_block_size=8192
db_cache_size=25165824
db_domain=''
db_file_multiblock_read_count=16
db_name='orclnew'
db_recovery_file_dest='D:\oracle\product\10.1.0\flash_recovery_area'
db_recovery_file_dest_size=2147483648
dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
java_pool_size=50331648
job_queue_processes=10
large_pool_size=8388608
open_cursors=300
pga_aggregate_target=25165824
processes=150
remote_login_passwordfile='EXCLUSIVE'
shared_pool_size=83886080
sort_area_size=65536
undo_management='AUTO'
undo_tablespace='UNDOTBS1'
user_dump_dest='D:\oracle\product\10.1.0\admin\orclnew\udump'

5)Connect to the old database as super user and copy shutdown the database.
SQL>shu immediate;
6)copy the datafile and logfiles according to the mentioned controfile script.

create the oracle service for the new database.So that it can be connected.
cd D:\oracle\product\10.1.0\oradata\orclnew\
oradim new -sid orclnew -intpwd oracle -startmode -M

7) set ORACLE_SID=orclnew
sqlplus '/nologs'

8)SQL>conn sys/oracle@orclnew
SQL>STARTUP NOMOUNT PFILE='D:\oracle\product\10.1.0\db_1\database\INITorclnew.ORA'

9)Run the ctrlorclnew.sql file
SQL>@D:\orclnew\ctrlorclnew.sql

10) Recover the database untill cancel.
SQL>RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE;

SQL>ALTER DATABASE OPEN RESETLOGS;

SQL>ALTER TABLESPACE TEMP ADD TEMPFILE ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\orclnew\TEMP01.DBF’

SIZE 20971520 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M;