2012年1月11日 星期三

Oracle : 將正式區DB copy到測試區,並換database name

以下只寫大項

1. shutdown 正式環境
2. copy 正式DB
3. 修改pfile DB_NAME=測試區DB_NAME (& INSTANCE_NAME)
4.  以下指令不做會有 ORA-01102: cannot mount database in EXCLUSIVE mode 錯誤訊息,因為正式區目前也是open(正式/測試在同一台機器),即使instance不同,但DB name同,Oracle仍不允許open測試區(Windows OS)

STARTUP NOMOUNT

CREATE CONTROLFILE SET DATABASE HRDBTW RESETLOGS NOARCHIVELOG
--  SET STANDBY TO MAXIMIZE PERFORMANCE
    MAXLOGFILES 5
    MAXLOGMEMBERS 3
    MAXDATAFILES 100
    MAXINSTANCES 1
    MAXLOGHISTORY 1134
LOGFILE
  GROUP 1 'E:\ORADATA\HRDBTW\REDO01.LOG'  SIZE 100M,
  GROUP 2 'E:\ORADATA\HRDBTW\REDO02.LOG'  SIZE 100M,
  GROUP 3 'E:\ORADATA\HRDBTW\REDO03.LOG'  SIZE 100M
-- STANDBY LOGFILE
DATAFILE
  'E:\ORADATA\HRDBTW\SYSTEM01.DBF',
  'E:\ORADATA\HRDBTW\UNDOTBS01.DBF',
  'E:\ORADATA\HRDBTW\DRSYS01.DBF',
  'E:\ORADATA\HRDBTW\INDX01.DBF',
  'E:\ORADATA\HRDBTW\TOOLS01.DBF',
  'E:\ORADATA\HRDBTW\USERS01.DBF',
  'E:\ORADATA\HRDBTW\USR.DBF',
  'E:\ORADATA\HRDBTW\XDB01.DBF',
  'E:\ORADATA\HRDBTW\USR02.DBF',
  'E:\ORADATA\HRDBTW\USER03.DBF',
  'E:\ORADATA\HRDBTW\USR04.DBF',
  'E:\ORADATA\HRDBTW\USR05.DBF',
  'E:\ORADATA\HRDBTW\USR06.DBF',
  'E:\ORADATA\HRDBTW\USR07.DBF',
  'E:\ORADATA\HRDBTW\USR08.DBF'
CHARACTER SET UTF8
;

ALTER DATABASE OPEN RESETLOGS;

ALTER TABLESPACE TEMP ADD TEMPFILE 'E:\ORADATA\HRDBTW\TEMP01.DBF'
     SIZE 580911104  REUSE AUTOEXTEND OFF;
ALTER TABLESPACE TEMP ADD TEMPFILE 'E:\ORADATA\HRDBTW\TEMP02.DBF'
     SIZE 524288000  REUSE AUTOEXTEND OFF;

沒有留言:

張貼留言