TECH
QUESTION
자주하는 질문답변 입니다.
Oracle
작성자 | 유건데이타 | 등록일 | 2015-05-15 |
제목 | ORACLE_SID를 변경하는 방법 (SID 를 RC815UT에서 RC815NEW로 변경) | ||
---|---|---|---|
ORACLE_SID를 변경하는 방법 (SID 를 RC815UT에서 RC815NEW로 변경) =============================================================== PURPOSE -------- ORACLE_SID를 변경하는 방법에 관한 자료이다. Explanation ----------- 1. 먼저 변경하고자 하는 SID를 v$thread 로 확인한다. SVRMGR> select instance from v$thread; INSTANCE ---------------- RC815UT 1 row selected. 2. DB를 shutdown한다. (shutdown normal or immediate) 3. Full backup을 받는다.(All control, redo, data files backup) 1) datafiles SVRMGR> select file_name from dba_data_files; FILE_NAME ---------------------------------------------------- /mnt2/data/RC815UT/oradata/system01.dbf /mnt2/data/RC815UT/oradata/rbs01.dbf /mnt2/data/RC815UT/oradata/tools01.dbf /mnt2/data/RC815UT/oradata/users01.dbf /mnt2/data/RC815UT/oradata/temp01.dbf 2) redo log files SVRMGR> select group#, member from v$logfile; GROUP# MEMBER ---------- ----------------------------------------- 1 /mnt2/data/RC815UT/oradata/redoRC815UT01.log 2 /mnt2/data/RC815UT/oradata/redoRC815UT02.log 3 /mnt2/data/RC815UT/oradata/redoRC815UT03.log 3 rows selected. 3) control files SVRMGR> select name from v$controlfile; NAME ---------------------------------------------------- /mnt2/data/RC815UT/oradata/control01.ctl /mnt2/data/RC815UT/oradata/control02.ctl /mnt2/data/RC815UT/oradata/control03.ctl 3 rows selected. 4) full backup SVRMGR> ! cp /mnt2/data/RC815UT/oradata/* /mnt3/rctest8i/backup 4. .profile, .cshrc, .login, oratab, tnsnames.ora 파일에 ORACLE_SID가 설정되어있다면 이를 모두 새로운 ORACLE_SID명으로 변경시킨다. OLD ORACLE_SID : RC815UT NEW ORACLE_SID: RC815NEW 5. $ORACLE_HOME/dbs directory에서 새로운 SID명을 사용하기 위해 다음 파일을 수정한다. 1) initSID.ora 를 새로운 initSID.ora로 rename한다. initRC815UT.ora -> initRC815NEW.ora 2) initSID.ora file의 ifile에 설정한 configuration parameters 파일도 rename한다. configRC815UT.ora -> contifRC815NEW.ora 3) initSID.ora와 configSID.ora 파일에 예전 ORACLE_SID관련 사항이 있으면 새로운 ORACLE_SID로 모두 변경한다. 예) initSID.ora OLD) ifile = /mnt2/data/RC815UT/pfile/configRC815UT.ora NEW) ifile = /mnt2/data/RC815UT/pfile/configRC815NEW.ora 6. Optional!!! -> 기존의 SID명을 가진 data file이나 redo log file을 이용시 6번은 skip해도 된다. 만약 ORACLE_SID를 변경하면서 datafile이나 redo log file 이름도 새로운 SID명으로 함께 변경하려면 새로운 SID명의 디렉토리를 생성하여 mv로 기존 datafile과 redo log file을 모두 옮긴뒤 alter 문으로 rename한다. 기존의 /mnt2/data/RC815UT 에 있는 datafile과 redo log file을 새로운 SID명인 RC815NEW 디렉토리로 unix command 'mv'를 이용하여 모두 이동시킨다. $mnt2/data/RC815UT> cd.. $mnt2/data> mkdir RC815NEW $mv mnt2/data/RC815UT/redo* /mnt2/data/RC815NEW $mv mnt2/data/RC815UT/system01.dbf /mnt2/data/RC815NEW $mv mnt2/data/RC815UT/rbs01.dbf /mnt2/data/RC815NEW $mv mnt2/data/RC815UT/tools01.dbf /mnt2/data/RC815NEW $mv mnt2/data/RC815UT/users01.dbf /mnt2/data/RC815NEW $mv mnt2/data/RC815UT/temp01.dbf /mnt2/data/RC815NEW $svrmgrl> SVRMGR> startup mount SVRMGR> alter database rename file '/mnt2/data/RC815UT/redoRC815UT01.log' to '/mnt2/data/RC815NEW/redoRC815NEW01.log' ... 7. $ORACLE_HOME/dbs 밑에 orapw 만약 orapw 그리고 새로운 orapw orapwd file=orapw 8. db를 startup하고 shutdown한 다음 full backup을 수행한다. (backup control, redo, data f iles) 9. 변경된 .profile을 적용하기 위해 다음을 수행한다. $. ./.profile 을 실행하거나 $export ORACLE_SID=RC815NEW command를 수행한다. 10. db를 startup 한다. 11. select instance from v$thread; 로 변경된 ORACLE_SID를 확인한다. SVRMGR> select instance from v$thread; INSTANCE ---------------- RC815NEW 1 row selected. 12. 기존에 SID명이 기록되어있는 파일들을 수정한다. $ORACLE_HOME/network/admin/listener.ora 의 SID를 RC815NEW 로 수정 $ORACLE_HOME/network/admin/tnsnames.ora의 SID를 RC815NEW 로 수정 Reference Document ------------------ |
Comment | |||
---|---|---|---|
등록된 코멘트가 없습니다. |