DB Name 변경 절차


참조 문서


(How to Change the DBID and the DBNAME by using NID (문서 ID 224266.1),


How to Rename Database/Change DB_NAME or ORACLE_SID/Instance Name


(문서 ID 15390.1))


 


 


 


                         i.         NID 사용


    작업을 하기 전에 Backup 을 받아 놓는다.


    db_name 변경을 위한 pfile (initSID) 생성


    Instance Shutdown & Database mount


    NID utility 를 이용해 DB Name 변경


    Instance Shutdown


    pfile (initTECH.ora) 을 열어 ‘db_name=test’ 로 수정


(SID 변경 시 파일명도 같이 수정)


    password file 생성(SID도 함께 변경 시)


    Database mount


    Database RESETLOGS Open


    확인작업을 통해 마무리







명령어


SQL> create pfile from spfile;


SQL> shutdown immediate


SQL> startup mount pfile=’$ORACLE_HOME/dbs/initTECH.ora’


$ nid target=sys/oracle@tech dbname=test logfile=/u01/app/nidlog


SQL> shutdown immediate


$ vi $ORACLE_HOME/dbs/initTECH.ora


$ cp initTECH.ora inittest.ora (SID 도 변경시)


$ orapwd file=orapwtest password=oracle entires=5


SQL> startup mount pfile=’$ORACLE_HOME/dbs/inittest.ora


SQL> alter database open;


SQL> select dbid, name, open_mode, activation#, created from v$database;


 


                        ii.         Controlfile 재생성을 통한 DB Name 변경


    Controlfile 을 재생성 하기 위해 Trace file 생성


    db_name 변경을 위해 pfile(init.ora) 생성


    Instance Shutdown


    pfile 을 열어서 ‘db_name=TEST2’ 로 수정 (SID 함께 변경 시 파일명도 수정)


    control_files 의 값을 새로운 Controlfile 명으로 변경(중복 시 Error 발생)


    1번에서 생성한 Trace file 을 열어 Controlfile 재생성 부분을 복사해서 script 작성 (REUSE => SET, DB Name 수정)




    Script 실행 시 mount 상태까지 진행


    Open 을 위해 Recover Database 진행


    Database Open


    확인작업을 통해 마무리







명령어


SQL> alter database backup controlfile to trace;


SQL> create pfile from spfile;


SQL> shutdown immediate


$ vi $ORACLE_HOME/dbs/initTECH.ora


$ vi cre_con.sql


SQL> @cre_con.sql


SQL> recover database using controlfile until cancel


SQL> alter database open resetlogs;


SQL> select dbid, name, open_mode, activation#, created from v$database;


 


 

By haisins

오라클 DBA 박용석 입니다. haisins@gmail.com 으로 문의 주세요.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다