Início > Oracle > Trocar o nome do Banco e do DBID com o NID

Trocar o nome do Banco e do DBID com o NID

Bom Hoje sabado a noite, já que vou trabalhar e não vou fazer nada, estou aqui eu estudando, eu vou abordar sobre como trocar o nome do banco e da instancia bem facil com o utilitário NID, bom como eu já tinha abordado 1 vez como trocar o nome do banco de dados no post abaixo:

https://veduardodba.wordpress.com/2012/01/24/alterando-o-nome-da-instancia-e-do-banco-de-dados-oracle/

Este utilitario NID faz meu procedimento no link acima de troca do nome do banco e da instancia ficar no chinelo, já que o com o utilitario é muito mais rapido e simples, bom o NID tem a capacidade de trocar o nome do banco de dados e do DBID ou se quiser apenas o nome do banco ou apenas o dbid há essa opção, bom ele está disponivel a partir da versão 9i em diante, bom irei demonstrar apenas em ambiente Linux, segue:

– Bom primeiramente é muito importante se atentar em fazer 1 backup do ambiente antes de fazer a troca do nome do banco e fazer 1 backup do arquivo de parametros spfile e pfile, se possivel se não existir o pfile criar o pfile do spfile:

create pfile from spfile;

– Bom terá que fazer 1 shutdown limpo do banco e depois monta-lo, segue 1 exemplo:

SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP MOUNT
ORACLE instance started.

Total System Global Area 369098752 bytes
Fixed Size 1219496 bytes
Variable Size 109053016 bytes
Database Buffers 251658240 bytes
Redo Buffers 7168000 bytes
Database mounted.
SQL>

– Bom logo após você executa o utilitario NID com os devidos parametros, segue:

[oracle@hodb001vtr dbs]$ nid

DBNEWID: Release 10.2.0.1.0 – Production on Sat Mar 31 20:42:25 2012

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

Keyword Description (Default)
—————————————————-
TARGET Username/Password (NONE)
DBNAME New database name (NONE)
LOGFILE Output Log (NONE)
REVERT Revert failed change NO
SETNAME Set a new database name only NO
APPEND Append to output log NO
HELP Displays these messages NO

[oracle@hodb001vtr dbs]$

BOm eu vou trocar o nome do meu banco de orcl123 para DBHOMOL, segue como ficará o comando NID:

nid TARGET=sys/dqm50vnc DBNAME=DBHOMOL

Neste comando irá mudar o nome do banco e do DBID, para não mudar o dbid apenas setar no comando NID a opção setname=y, ficando desta maneira:

nid TARGET=sys/dqm50vnc DBNAME=DBHOMOL SETNAME=YES

Agora para você mudar apenas o DBID sem mudar o nome do banco é apenas vc não especificar o DBNAME

nid TARGET=SYS/dqm50vnc

Segue apenas a troca apenas do dbid:

[oracle@hodb001vtr dbs]$ nid TARGET=SYS/dqm50vnc

DBNEWID: Release 10.2.0.1.0 – Production on Sat Mar 31 20:50:51 2012

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

Connected to database ORCL123 (DBID=4109123650)

Connected to server version 10.2.0

Control Files in database:
/u01/app/oracle/oradata/orcl/control01.ctl
/u01/app/oracle/oradata/orcl/control02.ctl
/u01/app/oracle/oradata/orcl/control03.ctl

Change database ID of database ORCL123? (Y/[N]) => y

Proceeding with operation
Changing database ID from 4109123650 to 4109285996
Control File /u01/app/oracle/oradata/orcl/control01.ctl – modified
Control File /u01/app/oracle/oradata/orcl/control02.ctl – modified
Control File /u01/app/oracle/oradata/orcl/control03.ctl – modified
Datafile /u01/app/oracle/oradata/orcl/system01.dbf – dbid changed
Datafile /u01/app/oracle/oradata/orcl/undotbs01.dbf – dbid changed
Datafile /u01/app/oracle/oradata/orcl/sysaux01.dbf – dbid changed
Datafile /u01/app/oracle/oradata/orcl/users01.dbf – dbid changed
Datafile /u01/app/oracle/oradata/orcl/example01.dbf – dbid changed
Datafile /u01/app/oracle/oradata/orcl/temp01.dbf – dbid changed
Control File /u01/app/oracle/oradata/orcl/control01.ctl – dbid changed
Control File /u01/app/oracle/oradata/orcl/control02.ctl – dbid changed
Control File /u01/app/oracle/oradata/orcl/control03.ctl – dbid changed
Instance shut down

Database ID for database ORCL123 changed to 4109285996.
All previous backups and archived redo logs for this database are unusable.
Database is not aware of previous backups and archived logs in Recovery Area.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database ID.
DBNEWID – Completed succesfully.

[oracle@hodb001vtr dbs]$

Bom agora vamos fazer a troca do nome do banco de dados e da instancia:

[oracle@hodb001vtr dbs]$ nid TARGET=sys/dqm50vnc DBNAME=DBHOMOL

DBNEWID: Release 10.2.0.1.0 – Production on Sat Mar 31 20:56:09 2012

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

Connected to database ORCL123 (DBID=4109285996)

Connected to server version 10.2.0

Control Files in database:
/u01/app/oracle/oradata/orcl/control01.ctl
/u01/app/oracle/oradata/orcl/control02.ctl
/u01/app/oracle/oradata/orcl/control03.ctl

Change database ID and database name ORCL123 to DBHOMOL? (Y/[N]) => y

Proceeding with operation
Changing database ID from 4109285996 to 321710313
Changing database name from ORCL123 to DBHOMOL
Control File /u01/app/oracle/oradata/orcl/control01.ctl – modified
Control File /u01/app/oracle/oradata/orcl/control02.ctl – modified
Control File /u01/app/oracle/oradata/orcl/control03.ctl – modified
Datafile /u01/app/oracle/oradata/orcl/system01.dbf – dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/orcl/undotbs01.dbf – dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/orcl/sysaux01.dbf – dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/orcl/users01.dbf – dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/orcl/example01.dbf – dbid changed, wrote new name
Datafile /u01/app/oracle/oradata/orcl/temp01.dbf – dbid changed, wrote new name
Control File /u01/app/oracle/oradata/orcl/control01.ctl – dbid changed, wrote new name
Control File /u01/app/oracle/oradata/orcl/control02.ctl – dbid changed, wrote new name
Control File /u01/app/oracle/oradata/orcl/control03.ctl – dbid changed, wrote new name
Instance shut down

Database name changed to DBHOMOL.
Modify parameter file and generate a new password file before restarting.
Database ID for database DBHOMOL changed to 321710313.
All previous backups and archived redo logs for this database are unusable.
Database is not aware of previous backups and archived logs in Recovery Area.
Database has been shutdown, open database with RESETLOGS option.
Succesfully changed database name and ID.
DBNEWID – Completed succesfully.

[oracle@hodb001vtr dbs]$

Bom agora vamos criar o pfile da nova instancia e alterar o parametro db_name e o db_unique_name no pfile com o editor de texto vi, segue:

[oracle@hodb001vtr dbs]$ cp initorcl123.ora initDBHOMOL.ora
[oracle@hodb001vtr dbs]$ pwd
/u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@hodb001vtr dbs]$ ls -ltr |grep initDBHOMOL.ora
-rw-r–r–. 1 oracle oinstall 1235 Mar 31 20:58 initDBHOMOL.ora
[oracle@hodb001vtr dbs]$
[oracle@hodb001vtr dbs]$ vi initDBHOMOL.ora
[oracle@hodb001vtr dbs]$

– Agora vamos criar o novo arquivo de senha

orapwd file=/u01/app/oracle/product/10.2.0/db_1/dbs/orapwDBHOMOL password=dqm50vnc entries=10

– Agora é necessário apenas montar o banco e abrir com reset logs, segue:

SQL> startup mount
ORACLE instance started.

Total System Global Area 369098752 bytes
Fixed Size 1219496 bytes
Variable Size 109053016 bytes
Database Buffers 251658240 bytes
Redo Buffers 7168000 bytes
Database mounted.
SQL>
SQL> alter database open resetlogs;

Database altered.

SQL>

Consultando para verificar se foi realmente alterado o dbid e o nome do banco, segue:

SQL> select DBID,NAME from v$database;

DBID NAME
———- ———
321710313 DBHOMOL

SQL>
Yeahhh concluido com sucesso, porém se atentar pois é necessário trocar os nomes no listener.ora e tnsnames.ora setando o novo nome do banco.

Bom quando é ambiente Windows é necessário alterar o nome do serviço, segue como remover e como criar outro serviço do banco:

oradim -delete -sid orcl123
oradim -new -sid DBHOMOL -intpwd password -startmode a -pfile c:\oracle\102\database\pfileDBHOMOL.ora

Bom após concluir, fazer o backup do banco o mais rapido possivel.
Abraço!

Categorias:Oracle
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: