IT/ORACLE

DBNEWID Utility - DBNAME,DBID변경하기

Qhtlr 2007. 6. 15. 10:28
9i 이전까지는 DBID를 변경하기가 불가능 했으며, DBNAME을 변경하기 위해서는 controlfile을 재생성 해야 했습니다.

DBNEWID는 Oracle 9.2부터 소개된 nid utility입니다.

RMAN을 사용할 경우 DBID를 이용해서 instance를 식별합니다.
그러므로 DB Cloning한 DB를 RMAN catalog에 등록하기 위해서는 DBID를 변경해야 하는데 nid utility를 이용해서 변경을 합니다.

3가지의 유형이 있습니다.
DBID And DBNAME
DBNAME Only
DBID Only

1. DBID And DBNAME 모두 변경할 경우
SHUTDOWN IMMEDIATE
STARTUP MOUNT
nid TARGET=sys/password@TST1 DBNAME=TST2
SHUTDOWN IMMEDIATE

STARTUP MOUNT
ALTER SYSTEM SET DB_NAME=TST2 SCOPE=SPFILE;
SHUTDOWN IMMEDIATE

패스워드 파일을 사용하면 패스워드 파일을 재생성한다.
orapwd file=c:\oracle\920\database\pwdTST2.ora password=password entries=10

Rename the SPFILE to match the new DBNAME.

Windows시스템을 사용한다면 서비스를 재생성한다.
oradim -delete -sid TST1
oradim -new -sid TST2 -intpwd password -startmode a -pfile c:\oracle\920\database\spfileTST2.ora

listener.ora and tnsnames.ora 변경후 재기동

STARTUP MOUNT
ALTER DATABASE OPEN RESETLOGS;

2. DBNAME 만 변경할 경우
nid TARGET=sys/password@TST1 DBNAME=TST2 SETNAME=YES

When opening the database the RESETLOGS option is not needed so the database can be started using the STARTUP command.

3. DBID만 변경할 경우
SHUTDOWN IMMEDIATE
STARTUP MOUNT
nid TARGET=sys/password@TST2
SHUTDOWN IMMEDIATE
STARTUP MOUNT
ALTER DATABASE OPEN RESETLOGS;

더 자세히 보기 : DBNEWID Utility