Installare la utility e configurare il database server principale di test

Installare lo script Database Clone Snapshot Management (gDBClone) sul database server e configurare il server per copiare il database di produzione.

Fare riferimento alle linee guida relative alla frequenza di aggiornamento dei dati riportate di seguito per determinare il metodo migliore per duplicare il database di produzione al fine di creare il database principale di test.

  • Aggiornamenti frequenti (giornalieri/settimanali): creare un database principale di test come database in standby fisico.
  • Aggiornamenti normali (bi-weekly, mensilmente): creare un database principale di test da un database attivo utilizzando RMAN DUPLICATE
  • Aggiornamenti convenzionali (trimestrali, ogni sei mesi): creare un database principale di test da un backup completo del database RMAN.

Installare lo script di gestione degli snapshot della copia del database

Installare lo script gDBClone sul database server in cui si desidera creare il database principale di test.

La utility della riga di comando Database Clone Snapshot Management (gDBClone) richiede i privilegi di sistema root per la maggior parte dei task. In ambienti in cui l'amministrazione del sistema è gestita da un gruppo diverso dall'amministrazione del database o in cui la sicurezza rappresenta un problema significativo, si potrebbe decidere di limitare l'accesso all'account utente root e alla password. Sudo consente agli amministratori di sistema di concedere a determinati utenti o gruppi di utenti la possibilità di eseguire comandi come root, registrando tutti i comandi e gli argomenti come parte del protocollo di sicurezza e conformità.

Assicurarsi che i server principali di produzione e di test soddisfino i servizi, i prodotti e i ruoli richiesti per l'utility della riga di comando gDBClone.
  1. Scaricare la utility gDBClone nel server principale di test.
  2. Eseguire il login e sudo alla radice.
    $ sudo -s
  3. Installare la utility gDBClone utilizzando il comando RPM.
    L'esempio utilizza il numero di versione 3.0.2-129.
    # rpm -i gDBClone-3.0.2-129.noarch.rpm
    La utility viene installata nella directory /opt/gDBClone.
  4. (Facoltativo) Per aggiornare la utility gDBClone a una versione più recente, utilizzare il comando di aggiornamento RPM e immettere il numero di versione gDBClone.
    #rpm -Uvh gDBClone-version number.noarch.rpm

Aggiungere il database principale di test alla directory e configurare la porta

Se si creerà il database principale di test come database in standby fisico o si utilizza la duplicazione attiva di Oracle Recovery Manager (RMAN), aggiungere una voce per il server principale di test nella directory /etc/hosts del database server di produzione e configurare le porte.
  1. Eseguire il login al database server di produzione come root e passare alla directory /etc/hosts.
  2. Aggiungere una voce per il server principale di test (tstmstr).
    Il nome SCAN sul server principale di test è tstmstr-scan.
    [oracle@tstmstr ~]$ srvctl config scan
    SCAN name: tstmstr-scan, Network: 1
    Subnet IPv4: 192.0.2.1/255.255.255.0/p7p1, static
    Subnet IPv6: 
    SCAN 0 IPv4 VIP: 192.0.2.7
    SCAN VIP is disabled.
    SCAN VIP is individually enabled on nodes: 
    SCAN VIP is individually disabled on nodes: 
    [oracle@tstmstr ~]$ 
    
  3. Verificare che tstmstr e tstmstr-scan si trovino nella directory /etc/hosts e che i domini siano assegnati.
    [oracle@proddb ~]$ cat /etc/hosts
    203.0.113.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.0.2.6  proddb.bass1.ebsvcn.examplevcn.com  proddb
    198.51.100.1  proddb-priv.bass1.ebsvcn.examplevcn.com  proddb-priv
    192.0.2.6  proddb-vip.bass1.ebsvcn.examplevcn.com  proddb-vip
    192.0.2.6  proddb-scan.bass1.ebsvcn.examplevcn.com  proddb-scan
    192.0.2.7 tstmstr.bass1.ebsvcn.examplevcn.com	tstmstr		tstmstr-scan
  4. Aprire la porta 35007 nella lista di sicurezza della subnet del database nella console di Oracle Cloud Infrastructure e nella porta iptables sul database server.
    L'utility gDBClone crea un listener ausiliario temporaneo (sulla porta 35007) sul server principale di test per la duplicazione RMAN. La regola crea una regola di entrata per la porta 35007 dalla sottorete del database di produzione. Nell'esempio, 192.0.2.1/24 è la subnet del database di produzione.
    [root@tstmstr opc]# iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 35007 -s 192.0.2.1/24 -j ACCEPT
    [root@tstmstr opc]# service iptables save
    [root@tstmstr opc]# service iptables status

Configurare il server principale di test

Per tutte le opzioni Database principale di test è necessario creare una Oracle Database home (home DB), configurare Oracle ASM Cluster File System (Oracle ACFS) e creare un wallet TDE (Transparent Data Encryption) nell'istanza del server principale di test.

In questo esempio vengono utilizzati i seguenti nomi:

  • Istanza database di produzione di origine: PRODDB (il nome PDB è PDB1)
  • Istanza di database principale di test: TSTMSTR (il nome PDB è PDB1)
  1. Creare una home DB con la stessa versione del database di produzione di origine.
    Utilizzare il comando dbcli list-dbhomes per confermare che la home e la versione del database sono configurati. In questo esempio viene utilizzata la versione 12.1.0.2.190416.
    [root@tstmstr ~]# dbcli create-dbhome -v 12.1.0.2.190416
    
    [root@tstmstr ~]# dbcli list-dbhomes
    
    ID                                       Name                 DB Version        Home Location                                Status    
    ---------------------------------------- -------------------- ----------------- -------------------------------------------- ----------
    547437ec-b40e-4f53-8cd5-4b4fd11f449b     OraDB12102_home1     12.1.0.2.190416    /u01/app/oracle/product/12.1.0.2/dbhome_1     Configured
    98632e4c-1907-4a6a-b60a-76577505ff92     OraDB12102_home2     12.1.0.2.190416    /u01/app/oracle/product/12.1.0.2/dbhome_2     Configured
    
    
  2. Creare la memoria Oracle ASM Cluster File System (Oracle ACFS) per il database principale di test.
    Utilizzare il comando dbcli create-dbstorage per creare lo storage per data, redo e l'area di recupero rapido (fra).
    
    [root@tstmstr ~]# dbcli create-dbstorage --dataSize 1024 --dbname TSTMSTR --databaseUniqueName TSTMSTR --dbstorage ACFS
    
  3. Verificare che la memoria venga visualizzata nella lista di memorizzazione del database e convalidare i file system.
    Utilizzare il comando dbcli list-dbstorages per confermare che il file system è configurato.
    [root@tstmstr ~]# dbcli list-dbstorages
    
    ID                                       Type   DBUnique Name        Status    
    ---------------------------------------- ------ -------------------- ----------
    67123ff1-1b14-4467-87e8-3247e7ab4db2     Asm    ORCL_iad1hb          Configured
    4d2790a7-ec55-4957-a1cf-1d78ce22ce6a     Acfs   TSTMSTR              Configured
    
    ###### validate Filesystems on ACFS
    # df -h
  4. Creare un password file sys nella directory /opt/gDBClone/.
    Questo è un file cifrato con la password SYS che gDBClone è in grado di leggere.
    [root@tstmstr ~]# cd /opt/gDBClone/
    [root@tstmstr gDBClone]# /opt/gDBClone/gDBClone syspwf  -syspwf SYS.password
    [root@tstmstr gDBClone]# ls -rlt SYS.password
    -rw-rw-rw- 1 root root 33 Sept 30 04:47 SYS.password
  5. Copiare il wallet TDE da PRODDB a TSTMSTR.
    Creare un tar del wallet TDE nel database server di produzione e ripristinare il wallet nel database server principale di test.
    ##### Create a tar of TDE wallet on Production Database Server
    [oracle@proddb ~]$ cd /opt/oracle/dcs/commonstore/wallets/tde/PRODDB_iad1df/
    [oracle@proddb PRODDB_iad1df]$ ls -rlt
    total 48
    -rw------- 1 oracle asmadmin  2555 Sept 24 06:26 ewallet_2019092406265698_defaultTag.p12
    -rw------- 1 oracle asmadmin  5819 Sept 24 06:26 ewallet.p12
    -rw------- 1 oracle asmadmin  5880 Sept 24 06:26 cwallet.sso 
    [oracle@proddb PRODDB_iad1df]$ tar cvf wallet.tar ./ewallet.p12  ./cwallet.sso
    ./ewallet.p12
    ./cwallet.sso
    [oracle@proddb PRODDB_iad1df]$ 
      
    ##### Restore TDE wallet on Test Master Database Server
    [oracle@tstmstr ~]$ cd /opt/oracle/dcs/commonstore/wallets/tde/TSTMSTR
    [oracle@tstmstr TSTMSTR]$ tar xvf /tmp/wallet.tar
    ./ewallet.p12
    ./cwallet.sso
    [oracle@tstmstr TSTMSTR]$
Il database server Production viene configurato per Oracle Data Guard ed è possibile creare un database principale di test.