Clonare vm oracle linux con vmware e far funzionare il db con nuovo hostname ed ip address senza riconfigurare tutta l’istanza

Posted on 21 luglio 2016 di

0


Dopo aver clonato una vm oracle linux su vmware con a bordo Oracle Database 12.1.0.2 standalone su Grid e Asm è impossibile cambiare IP ed HOSTNAME senza combattare un pò.

In esempio la vm sorgente è
192.158.1.30 server03 server03.company.com

Quella di sestinazione è
192.158.1.40 server04 server04.company.com

Nei forum ci sono vari articoli e premetto che non sono un grosso esperto di oracle e seguirli è stato complicato e non ha portato ad alcun risultato. In particolare per sconfigurare e riconfigurare l’istanza dopo il cambio di ip ed hostname mi sono imbattutto in una selva di articoli che purtroppo mi hanno fatto perdere solamente tempo.

Di conseguenza ho trovato una procedura “originale” che comunque ha dato i frutti sperati e la condivido.
1) cambiato l’ip sul server da OS da user root e inserita la seguente entry nel file hosts locale del nodo clonato standalone per “ingannare” il database e far partire correttamente tutti i servizi

192.158.1.40 server03 server03.company.com

2) cambiato ip in $ORACLE_HOME/network/admin/tnsnames.ora da user oracle

3) cambiato ip in /u01/app/12.1.0.2/grid/network/admin/listener.ora da user grid

4) reboot

In questa configurazione saremmo pronti a dare l’ambiente se non fosse per il fatto che per Oracle il server locale si chiama ancora server03 e non server04 e questo inficia su agent di backup o di terze parti
Tentando di rinominare l’hostname, allo startup le istanze non partono e nel file /var/log/messages ci sono errori del tipo:

/etc/oracle/scls_scr/server04/grid/ohasdstr non esiste perchè il nome host è cambiato rispetto all’installazione originale; di conseguenza facendo una ricerca su tutte le dir di installazione di oracle seguenti:

[root@server04 ~]# find /u01/app -type d -name server03
/u01/app/grid/crsdata/server03
/u01/app/grid/diag/crs/server03
/u01/app/12.1.0.2/grid/crf/db/server03
/u01/app/12.1.0.2/grid/log/server03
/u01/app/12.1.0.2/grid/gpnp/server03
/u01/app/12.1.0.2/grid/inventory/Scripts/ext/bin/log/server03
/u01/app/12.1.0.2/grid/inventory/backup/2016-04-14_09-53-13AM/Scripts/ext/bin/log/server03
/u01/app/12.1.0.2/grid/auth/evm/server03
/u01/app/12.1.0.2/grid/auth/css/server03
/u01/app/12.1.0.2/grid/auth/ohasd/server03
/u01/app/12.1.0.2/grid/auth/crs/server03
/u01/app/12.1.0.2/grid/cdata/server03
/u01/app/12.1.0.2/grid/crs/utl/server03

si trovano le dir da cambiare:

[root@server04 ~]# mv /u01/app/grid/crsdata/server03 /u01/app/grid/crsdata/server04
[root@server04 ~]# mv /u01/app/grid/diag/crs/server03 /u01/app/grid/diag/crs/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/gpnp/server03 /u01/app/12.1.0.2/grid/gpnp/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/inventory/Scripts/ext/bin/log/server03 /u01/app/12.1.0.2/grid/inventory/Scripts/ext/bin/log/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/auth/evm/server03 /u01/app/12.1.0.2/grid/auth/evm/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/auth/css/server03 /u01/app/12.1.0.2/grid/auth/css/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/auth/ohasd/server03 /u01/app/12.1.0.2/grid/auth/ohasd/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/auth/crs/server03 /u01/app/12.1.0.2/grid/auth/crs/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/cdata/server03 /u01/app/12.1.0.2/grid/cdata/server04
[root@server04 ~]# mv /u01/app/12.1.0.2/grid/crs/utl/server03 /u01/app/12.1.0.2/grid/crs/utl/server04

Fatto questo è partito tutto correttamente e la entry di “inganno” del punto 1) si può rimuovere tranquillamente.

Ad ogni modo la procedura corretta che è meglio eseguire dopo fatto tutto è sotto support.oracle.com con document id 1552810.1

 

 

Annunci
Posted in: Backup, oracle, Vmware