Escolhendo meu DBID

https://thefooduntold.com/food-science/21qz17miwm9 Aqui no Oracle Home já falamos da importância do DBID (database ID) artigo: Descobrindo o DBID sem acesso ao database OPEN, de como alterá-lo via DBNEWID (NID) artigo: Alterar DBname via NID, mas nunca de como podemos mudá-lo para um valor aleatório(de nossa escolha).

https://www.techonicsltd.com/uncategorized/27qzn6d Mas para que isto seria útil?

Order Tramadol Discount Bom, pode ser pelo mero prazer de ter uma base com o DBID do seu gosto (1,2,3..24..666) ou pelo fato da licença da sua aplicação estar vinculada ao DBID do banco de modo que se ele for alterado a aplicação para de funcionar!

Shop Tramadol Online Antes de começar lembre-se que é de suma importância executar um backup FULL do database!

https://www.insearchofsukoon.com/m3vjojtxx Verificando o dbid atual da base:

click SQL> select dbid from v$database; DBID ---------- 3464458105

https://gsaudemarketing.com.br/pp3ll2gwz19 Efetuando um shutdown limpo da base e na sequencia abrindo como READ ONLY:

watch SQL> shut immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup open read only; ORACLE instance started. Total System Global Area 1138368512 bytes Fixed Size 1364088 bytes Variable Size 318771080 bytes Database Buffers 788529152 bytes Redo Buffers 29704192 bytes Database mounted. Database opened.

get link Agora basta executar o script abaixo que ele irá pedir o NOVO DBID da base e após você inserir ele irá fazer todo o trabalho.

see url Baixe o script clicando AQUI.

source SQL> set serveroutput on SQL> declare 2 v_chgdbid binary_integer; 3 v_chgdbname binary_integer; 4 v_skipped binary_integer; 5 v_new_db_name varchar2(9); 6 v_old_db_name varchar2(9); 7 v_new_dbid number; 8 v_old_dbid number; 9 w_action varchar2(255); 10 11 12 begin 13 w_action:='Recuperando DBID Atual.' ; 14 select dbid, name, name into v_old_dbid, v_new_db_name, v_old_db_name from v$database; 15 16 select TO_NUMBER('&NOVO_DBID') into v_new_dbid from dual; 17 18 w_action:='Executando a Procedure (dbms_backup_restore.nidbegin).'; 19 dbms_output.put_line('New NAME='||V_NEW_DB_NAME); 20 dbms_output.put_line('Old NAME='||V_OLD_DB_NAME); 21 dbms_output.put_line('New DBID='||V_NEW_DBID); 22 dbms_output.put_line('Old DBID='||V_OLD_DBID); 23 24 dbms_backup_restore.nidbegin(V_NEW_DB_NAME,V_OLD_DB_NAME,V_NEW_DBID,V_OLD_DBID,0,0,10); 25 26 w_action:='Executando a Procedure (dbms_backup_restore.nidprocesscf).'; 27 dbms_backup_restore.nidprocesscf( v_chgdbid,v_chgdbname); 28 29 dbms_output.put_line('ControlFile.......: '); 30 dbms_output.put_line(' => Change Name..: ' ||to_char(v_chgdbname)); 31 dbms_output.put_line(' => Change DBID..: ' ||to_char(v_chgdbid)); 32 33 w_action := 'Alterando os Datafiles, procedure (dbms_backup_restore.nidprocessdf).'; 34 for i in (select file#,name from v$datafile) 35 loop 36 dbms_output.put_line('DataFile..........: ' ||i.name); 37 dbms_output.put_line(' => Skipped......: ' ||to_char(v_skipped)); 38 dbms_output.put_line(' => Change Name..: ' ||to_char(v_chgdbname)); 39 dbms_output.put_line(' => Change DBID..: ' ||to_char(v_chgdbid)); 40 dbms_backup_restore.nidprocessdf(i.file#,0, v_skipped,v_chgdbid,v_chgdbname); 41 end loop; 42 43 w_action := 'Alterando os Tempfiles, procedure (dbms_backup_restore.nidprocessdf).'; 44 for i in (select file#,name from v$tempfile) 45 loop 46 dbms_output.put_line('TempFile..........: ' ||i.name); 47 dbms_output.put_line(' => Skipped......: ' ||to_char(v_skipped)); 48 dbms_output.put_line(' => Change Name..: ' ||to_char(v_chgdbname)); 49 dbms_output.put_line(' => Change DBID..: ' ||to_char(v_chgdbid)); 50 dbms_backup_restore.nidprocessdf(i.file#,1,v_skipped,v_chgdbid,v_chgdbname); 51 end loop; 52 dbms_backup_restore.nidend; 53 end; 54 / Enter value for novo_dbid: 1 old 16: select TO_NUMBER('&NOVO_DBID') into v_new_dbid from dual; new 16: select TO_NUMBER('1') into v_new_dbid from dual; New NAME=DBTRN Old NAME=DBTRN New DBID=1 Old DBID=3464458105 ControlFile.......: => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/system01.dbf => Skipped......: => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/sysaux01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/users01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/veys01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/FAROL01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/teste01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd02/oradata/dbtrn/teste02.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd03/oradata/dbtrn/system02.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 DataFile..........: /oraprd03/oradata/dbtrn/undotbs01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 TempFile..........: /oraprd02/oradata/dbtrn/temp01.dbf => Skipped......: 0 => Change Name..: 0 => Change DBID..: 1 PL/SQL procedure successfully completed.

get link Terminado a execução do script podemos ver que todos os arquivos tiveram o DBID alterado para 1 e que nenhum foi pulado (SKIPPED).

Order Tramadol American Express Efetuando novamente um shutdown e abrindo a base com OPEN RESETLOGS pois alteramos o controlfile!

https://ict-pulse.com/2024/07/e0yz05xqz2 SQL> startup mount ORACLE instance started. Total System Global Area 1138368512 bytes Fixed Size 1364088 bytes Variable Size 318771080 bytes Database Buffers 788529152 bytes Redo Buffers 29704192 bytes Database mounted. SQL> alter database open resetlogs; Database altered.

Verificando o novo DBID do banco de dados:

SQL> select dbid from v$database;

      DBID
----------
         1

No script também existe a variavel v_new_db_name que lhe mertite alterar junto com o DBID o DBNAME da base, basta ajustá-lo e voilá! tudo de uma só vez.

Referências:

 How To Choose Your Oracle Database ID (DBID)

%name Escolhendo meu DBID

Autor: Anderson Graf

Bacharel em Sistemas de Informação e MBA em Gestão de Banco de Dados Oracle. Entusiasta da tecnologia Oracle, ACE Associate ♠, autor em vários blogs e OTN. Consultor Oracle Senior na Exímio Soluções em TI

Envolvido em soluções de:
– Implementação, migração, gerenciamento e suporte a produtos Oracle, multiplataforma
– Monitoramento de ambientes 24×7
– Backup e Recovery
– Performance e Tuning
– Alta disponibilidade (HA) – RAC, Data Guard
– EM database/grid/cloud control
– Particionamento & Advanced Compression
– Oracle Engineered Systems – ODA, Exadata

Blog pessoal: http://www.andersondba.com.br
Articulista na Oracle Technology Network (OTN) – https://goo.gl/99R6yW
ACE Associate – https://goo.gl/MBB51b
Articulista GPO – http://profissionaloracle.com.br