Configurare i listener e SQLNet.ora

Configurare i listener su tutti i nodi per Oracle Database Exadata Cloud Service e Oracle Exadata Database Machine in locale.

Aggiungere un listener statico all'istanza in standby

Aggiungere un listener statico alla home Grid sull'istanza di Oracle Database Exadata Cloud Service.

  1. Creare un file listener sul nodo 1 dell'istanza di Oracle Database Exadata Cloud Service.
    Di seguito è riportato un file di esempio. Modificare GLOBAL_DBNAME e SID_NAME per l'ambiente.
    [grid@exacs82-vm3sv1 admin]$ cat listener.ora
    LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))
    # line added by Agent
    LISTENER_SCAN3=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN3))
    ))
    # line added by Agent
    LISTENER_SCAN2=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN2))
    ))
    # line added by Agent
    LISTENER_SCAN1=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER_SCAN1))
    ))
    # line added by Agent
    ASMNET1LSNR_ASM=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=ASMNET1LSNR_ASM
    ))))
    # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_ASMNET1LSNR_ASM=ON
    # line added by Agent
    VALID_NODE_CHECKING_REGISTRATION_ASMNET1LSNR_ASM=SUBNET
    # line added by Agent
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN1=ON
    # line added by Agent
    VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN1=OFF
    # line added by Agent - 
    Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN2=ON
    # line added by Agent
    VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN2=OFF
    # line added by Agent - 
    Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER_SCAN3=ON
    # line added by Agent
    VALID_NODE_CHECKING_REGISTRATION_LISTENER_SCAN3=OFF
    # line added by Agent - 
    Disabled by Agent because REMOTE_REGISTRATION_ADDRESS is set
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON
    # line added by Agent
    VALID_NODE_CHECKING_REGISTRATION_LISTENER=SUBNET
    # line added by Agent
    SSL_CLIENT_AUTHENTICATION = FALSE
    WALLET_LOCATION=(SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = 
    /var/opt/oracle/dbaas_acfs/grid/tcps_wallets)))
    SID_LIST_LISTENER =
    (SID_LIST =
      (SID_DESC =
       (GLOBAL_DBNAME = DB1_phx3g7)
       (ORACLE_HOME = /u02/app/oracle/product/19.0.0.0/dbhome_5)
       (SID_NAME = DB11)
      )
    )
  2. Eseguire il login al nodo come utente opc.
    ssh -i cluster.key opc@10.255.195.131
  3. Sudo all'utente grid.
    sudo su - grid
  4. Aggiornare l'ambiente.
    $ . oraenv
    ORACLE_SID = [DB11] ? +ASM1
    L'output sarà simile a quanto segue:
    The Oracle base has been changed from /u02/app/oracle to /u01/app/grid
  5. Confermare che i file del listener si trovano nella directory $ORACLE_HOME/network/admin.
    cd $ORACLE_HOME/network/admin
    ls -lrt
  6. Ricaricare il listener.
    [grid@exacs82-vm3sv1 admin]$ lsnrctl reload
  7. Controllare lo stato del listener.
    [grid@exacs82-vm3sv1 admin]$ lsnrctl status
    L'output sarà simile a quanto segue:
    Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
    STATUS of the LISTENER
    ------------------------
    Alias                     LISTENER
    Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
    Start Date                18-JAN-2021 03:42:09
    Uptime                    10 days 8 hr. 47 min. 53 sec
    Trace Level               off
    Security                  ON: Local OS Authentication
    SNMP                      OFF
    Listener Parameter File   /u01/app/19.0.0.0/grid/network/admin/listener.ora
    Listener Log File         /u01/app/grid/diag/tnslsnr/exacs82-
    vm3sv1/listener/alert/log.xml
    Listening Endpoints Summary...
      (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
    Services Summary...
    Service "DB1_phx3g7" has 1 instance(s).
      Instance "DB11", status UNKNOWN, has 1 handler(s) for this service...
    The command completed successfully
  8. Cercare il nodo per verificare il listener.
    lsnrctl services | grep DB1
    L'output sarà simile a quanto riportato di seguito.
    Service "DB1_phx3g7" has 1 instance(s).
      Instance "DB11", status UNKNOWN, has 1 handler(s) for this service...
    Service "DB1_phx3g7.datasubnetactiv.oscphevcn.oraclevcn.com" has 1 instance(s).
      Instance "DB11", status BLOCKED, has 1 handler(s) for this service...
    [oracle@exacs82-vm3sv1 DB1]$ Connection to 10.255.195.131 closed by remote host.
     
  9. Avviare l'istanza di Oracle Database Exadata Cloud Service.
    [oracle@exacs82-vm3sv1 ~]$ sqlplus / as sysdba
    SQL> startup mount;

Configura SQL Net.Ora

Configurare e copiare il file sqlnet.ora in tutti i nodi delle istanze Exadata primarie e in standby, inclusa la home della griglia. La configurazione SQLNET.ora deve esistere in Oracle Exadata Database Machine in locale e in Oracle Database Exadata Cloud Service.

Di seguito è riportato uno snap dei valori nei nodi.

La posizione del file wallet deve esistere nel file SQLNet.ora sia nelle istanze Exadata primarie che in standby. Assicurarsi che non vi siano interruzioni di riga o spazi vuoti nel file SQLNET.ora.

  1. Eseguire il login al nodo della Oracle home 1 di Exadata primario in locale, quindi impostare sqlnet.ora.
    [oracle@exa11db01 admin]$ cat sqlnet.ora 
    Di seguito viene fornito un esempio dell'output del comando.
    # sqlnet.ora.exa11db01 Network Configuration File: 
    /u01/app/19.0.0.0/grid/network/admin/sqlnet.ora.exa11db01
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
    SQLNET.ENCRYPTION_SERVER=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_SERVER=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER=(SHA1) 
    SQLNET.ENCRYPTION_CLIENT=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_CLIENT=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_CLIENT=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT=(SHA1)
    ENCRYPTION_WALLET_LOCATION = 
     (SOURCE=
      (METHOD=FILE)
       (METHOD_DATA=
        (DIRECTORY=/u01/app/oracle/admin/db1/wallet/)))
  2. Eseguire il login al nodo della Oracle home 2 di Exadata primario in locale, quindi impostare sqlnet.ora.
    [oracle@exa11db02 admin]$ cat sqlnet.ora 
    Di seguito viene fornito un esempio dell'output del comando.
    # sqlnet.ora.exa11db01 Network Configuration File: 
    /u01/app/19.0.0.0/grid/network/admin/sqlnet.ora.exa11db01
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
    SQLNET.ENCRYPTION_SERVER=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_SERVER=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER=(SHA1) 
    SQLNET.ENCRYPTION_CLIENT=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_CLIENT=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_CLIENT=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT=(SHA1)
    ENCRYPTION_WALLET_LOCATION = 
     (SOURCE=
      (METHOD=FILE)
       (METHOD_DATA=
        (DIRECTORY=/u01/app/oracle/admin/db1/wallet/)))
  3. Eseguire il login al nodo 1 della home Grid di Exadata primario in locale, quindi impostare sqlnet.ora.
    [oracle@exa11db01 admin]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    # sqlnet.ora.exa11db02 Network Configuration File: 
    /u01/app/19.0.0.0/grid/network/admin/sqlnet.ora.exa11db01
    # Generated by Oracle configuration tools.
    #(Default Values)
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
  4. Eseguire il login al nodo 2 della home Grid di Exadata primario in locale, quindi impostare sqlnet.ora.
    [oracle@exa11db02 admin]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    # sqlnet.ora.exa11db02 Network Configuration File: 
    /u01/app/19.0.0.0/grid/network/admin/sqlnet.ora.exa11db02
    # Generated by Oracle configuration tools.
    #(Default Values)
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
  5. Eseguire il login al nodo 1 di Oracle Database Exadata Cloud Service in standby, quindi impostare sqlnet.ora.
    [oracle@exacs82-vm3sv1 DB1]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    # sqlnet.ora.exa11db01 Network Configuration File: 
    /u01/app/19.0.0.0/grid/network/admin/sqlnet.ora.exa11db01
    # Generated by Oracle configuration tools.
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
    SQLNET.ENCRYPTION_SERVER=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_SERVER=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER=(SHA1) 
    SQLNET.ENCRYPTION_CLIENT=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_CLIENT=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_CLIENT=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT=(SHA1)
    ENCRYPTION_WALLET_LOCATION = 
     (SOURCE=
      (METHOD=FILE)
       (METHOD_DATA=
        (DIRECTORY=/var/opt/oracle/dbaas_acfs/DB1/wallet_root/tde)))
  6. Eseguire il login al nodo 2 di Oracle Database Exadata Cloud Service in standby, quindi impostare sqlnet.ora.
    [oracle@exacs82-vm3sv2 DB1]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    SQLNET.ENCRYPTION_TYPES_CLIENT = (AES256, AES192, AES128)
    SQLNET.ENCRYPTION_SERVER = requested
    SSL_CLIENT_AUTHENTICATION = FALSE
    SQLNET.ENCRYPTION_CLIENT = requested
    SSL_CIPHER_SUITES = (SSL_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, SSL_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_RSA_WITH_AES_256_GCM_SHA384)
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT = (SHA256, SHA384, SHA512, SHA1)
    HTTPS_SSL_VERSION = 1.2
    SQLNET.WALLET_OVERRIDE = FALSE
    SQLNET.EXPIRE_TIME = 10
    WALLET_LOCATION = 
    (SOURCE=(METHOD=FILE)(METHOD_DATA=(DIRECTORY=/var/opt/oracle/dbaas_acfs/grid/tcps_wall
    ets)))
    SQLNET.CRYPTO_CHECKSUM_CLIENT = accepted
    SQLNET.CRYPTO_CHECKSUM_SERVER = accepted
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER = (SHA256, SHA384, SHA512)
    ENCRYPTION_WALLET_LOCATION = 
     (SOURCE=
      (METHOD=FILE)
       (METHOD_DATA=
        (DIRECTORY=/var/opt/oracle/dbaas_acfs/DB1/wallet_root/tde)))
    SQLNET.ENCRYPTION_TYPES_SERVER = (AES256, AES192, AES128)
    SQLNET.IGNORE_ANO_ENCRYPTION_FOR_TCPS = TRUE
    SSL_VERSION = 1.2
  7. Eseguire il login al nodo della home Grid 1 di Oracle Database Exadata Cloud Service in standby, quindi impostare sqlnet.ora.
    [grid@exacs82-vm3sv1 admin]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    #SQLNET.ENCRYPTION_SERVER = requested
    #SQLNET.ENCRYPTION_TYPES_CLIENT = (AES256, AES192, AES128)
    #SSL_CLIENT_AUTHENTICATION = FALSE
    #SQLNET.ENCRYPTION_CLIENT = requested
    #SSL_CIPHER_SUITES = (SSL_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, SSL_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_RSA_WITH_AES_256_GCM_SHA384)
    #SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT = (SHA256, SHA384, SHA512, SHA1)
    #HTTPS_SSL_VERSION = 1.2
    #NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)
    #SQLNET.EXPIRE_TIME = 10
    #SQLNET.WALLET_OVERRIDE = FALSE
    WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = 
    /u02/app/oracle/admin/grid/grid_wallet)))
    #SQLNET.CRYPTO_CHECKSUM_CLIENT = accepted
    #SQLNET.CRYPTO_CHECKSUM_SERVER = accepted
    #SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER = (SHA256, SHA384, SHA512, SHA1)
    #SQLNET.ENCRYPTION_TYPES_SERVER = (AES256, AES192, AES128)
    #SQLNET.IGNORE_ANO_ENCRYPTION_FOR_TCPS = TRUE
    #SSL_VERSION = 1.2
    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME=10
    SQLNET.ENCRYPTION_SERVER=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_SERVER=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_SERVER=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER=(SHA1) 
    SQLNET.ENCRYPTION_CLIENT=REQUIRED 
    SQLNET.CRYPTO_CHECKSUM_CLIENT=REQUIRED 
    SQLNET.ENCRYPTION_TYPES_CLIENT=(AES256,AES192,AES128) 
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT=(SHA1)
  8. Eseguire il login al nodo della home Grid 2 di Oracle Database Exadata Cloud Service in standby, quindi impostare sqlnet.ora.
    [grid@exacs82-vm3sv2 admin]$ cat sqlnet.ora
    Di seguito viene fornito un esempio dell'output del comando.
    SQLNET.ENCRYPTION_SERVER = requested
    SQLNET.ENCRYPTION_TYPES_CLIENT = (AES256, AES192, AES128)
    SSL_CLIENT_AUTHENTICATION = FALSE
    SQLNET.ENCRYPTION_CLIENT = requested
    SSL_CIPHER_SUITES = (SSL_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, SSL_ECDHE_RSA_WITH_AES_128_GCM_SHA256, 
    SSL_ECDHE_RSA_WITH_AES_256_GCM_SHA384)
    SQLNET.CRYPTO_CHECKSUM_TYPES_CLIENT = (SHA256, SHA384, SHA512, SHA1)
    HTTPS_SSL_VERSION = 1.2
    NAMES.DIRECTORY_PATH = (TNSNAMES, EZCONNECT)
    SQLNET.EXPIRE_TIME = 10
    SQLNET.WALLET_OVERRIDE = FALSE
    WALLET_LOCATION = (SOURCE = (METHOD = FILE) (METHOD_DATA = (DIRECTORY = 
    /u02/app/oracle/admin/grid/grid_wallet)))
    SQLNET.CRYPTO_CHECKSUM_CLIENT = accepted
    SQLNET.CRYPTO_CHECKSUM_SERVER = accepted
    SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER = (SHA256, SHA384, SHA512, SHA1)
    SQLNET.ENCRYPTION_TYPES_SERVER = (AES256, AES192, AES128)
    SQLNET.IGNORE_ANO_ENCRYPTION_FOR_TCPS = TRUE
    SSL_VERSION = 1.2

Aggiornare i nomi di istanza e database su tutti i nodi

Modificare i nomi di istanza e database nel file tnsnames.ora su tutti i nodi di Exadata primario in locale e di Oracle Database Exadata Cloud Service in standby. Le voci per ogni database sono necessarie nei file tnsnames.ora primario e in standby per il trasporto redo corretto.

In questo esempio.

  • DB1: Nome database Oracle Exadata Database Machine primario in locale
  • db11: Nome istanza di database sul nodo 1
  • db12: Nome istanza di database sul nodo 2
  • DB1_phx3g7: nome istanza Oracle Database Exadata Cloud Service univoco.
  • DB11: Nome istanza Oracle Database Exadata Cloud Service 1 sul nodo 1
  • DB12: Nome istanza Oracle Database Exadata Cloud Service 2 sul nodo 2

Se il database primario dispone di una voce TNS nel file tnsnames.ora in locale con un nome server per HOST, modificare il nome del server in tale voce per utilizzare l'indirizzo IP per l'host. Gli indirizzi IP vengono utilizzati poiché non esiste DNS tra ambienti in locale e cloud per risolvere i nomi dei server in indirizzi IP.

Le configurazioni di Oracle Real Application Clusters (Oracle RAC) non possono risolvere il nome del listener di scansione. È pertanto necessario utilizzare una lista di indirizzi che elenca tutti i nodi. Questi verranno aggiunti in un secondo momento, l'istanza iniziale deve elencare un solo IP nelle voci TNS per garantire che Oracle Recovery Manager (RMAN) si connetta sempre agli stessi nodi.

Utilizzare l'esempio seguente, sostituendo i valori rilevanti per la configurazione.

  1. Nel nodo 1 di Exadata primario in locale aggiornare il nome del servizio e il nome dell'istanza nel file tnsnames.ora.
    [oracle@exa11db01 admin]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    # tnsnames.ora Network Configuration File: 
    /u01/app/oracle/product/19.0.0.0/dbhome_1/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
    DB1 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 10.136.74.2)(PORT = 1522))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
         #(SERVICE_NAME = db1.service_name)
         (SERVICE_NAME = DB1)
          (INSTANCE_NAME = db11)
        )
      )
    DB1_phx3g7 =
      (DESCRIPTION =
        (SDU = 65536)
        (RECV_BUF_SIZE = 134217728)
        (SEND_BUF_SIZE = 134217728)
        (ADDRESS_LIST =
          (CONNECT_TIMEOUT = 3)
          (RETRY_COUNT = 3)
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.195.136)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DB1_phx3g7.service_name)
          (UR = A)
        )
      )
  2. Nel nodo 2 di Exadata primario in locale aggiornare il nome del servizio e il nome dell'istanza nel file tnsnames.ora.
    [oracle@exa11db02 admin]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    # tnsnames.ora.exa11db02 Network Configuration File: 
    /u01/app/oracle/product/19.0.0.0/dbhome_1/network/admin/tnsnames.ora.exa11db02
    # Generated by Oracle configuration tools.
    DB1 =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = exa11-scan1)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = db1.service_name)
          (INSTANCE_NAME = db12)
        )
      )
    DB1_phx3g7 =
      (DESCRIPTION =
        (SDU = 65536)
        (RECV_BUF_SIZE = 134217728)
        (SEND_BUF_SIZE = 134217728)
        (ADDRESS_LIST =
          (CONNECT_TIMEOUT = 3)
          (RETRY_COUNT = 3)
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.195.136)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DB1_phx3g7.service_name)
          (UR = A)
        )
      )
  3. Nel nodo 1 della home Grid di Exadata primario in locale aggiornare il nome del servizio e il nome dell'istanza nel file tnsnames.ora.
    [oracle@exa11db01 admin]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    DB1_phx3g7 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST =10.255.195.131)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = DB1_phx3g7)
    (INSTANCE_NAME=DB11) 
    (UR=A) 
    )) 
    db1 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (FAILOVER=on)
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.136.74.18)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = db1) 
    (UR=A) 
    ))
  4. Eseguire il login al nodo 1 di Oracle Database Exadata Cloud Service in standby, quindi aggiornare il nome del servizio e il nome dell'istanza nel file tnsnames.ora.
    [oracle@exacs82-vm3sv1 DB1]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    DB1_phx3g7 =
      (DESCRIPTION =
        (SDU = 65536)
        (RECV_BUF_SIZE = 134217728)
        (SEND_BUF_SIZE = 134217728)
        (ADDRESS_LIST =
          (CONNECT_TIMEOUT = 3)
          (RETRY_COUNT = 3)
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.195.136)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DB1_phx3g7.service_name)
          (INSTANCE_NAME = DB11)
          (UR = A)
        )
      )
    db1 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (FAILOVER=on)
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.136.74.18)(PORT = 1521))  
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = db1.service_name)
          (INSTANCE_NAME = DB11)
          (UR = A)
        )
      )
  5. Nel nodo 2 di Oracle Database Exadata Cloud Service in standby aggiornare il nome del servizio e il nome dell'istanza nel file tnsnames.ora.
    [oracle@exacs82-vm3sv2 DB1]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    db1 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.136.74.18)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = db1.service_name) 
    (UR=A) 
    )
             ) 
    DB1_phx3g7 =
      (DESCRIPTION =
        (SDU = 65536)
        (RECV_BUF_SIZE = 134217728)
        (SEND_BUF_SIZE = 134217728)
        (ADDRESS_LIST =
          (CONNECT_TIMEOUT = 3)
          (RETRY_COUNT = 3)
          (ADDRESS = (PROTOCOL = TCP)(HOST = 10.255.195.136)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = DB1_phx3g7.service_name)
          (INSTANCE_NAME = DB12)
          (UR = A)
        )
      )
  6. Eseguire il login al nodo della home Grid 1 di Oracle Database Exadata Cloud Service in standby, quindi impostare sqlnet.ora.
    [grid@exacs82-vm3sv1 admin]$ cat tnsnames.ora
    Di seguito viene fornito un esempio dell'output del comando.
    DB1_phx3g7 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST =10.255.195.131)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = DB1_phx3g7)
    (INSTANCE_NAME=DB11) 
    (UR=A) 
    )) 
    db1 = 
    (DESCRIPTION = 
    (SDU=65536) (RECV_BUF_SIZE=134217728) 
    (SEND_BUF_SIZE=134217728) 
    (ADDRESS_LIST = 
    (FAILOVER=on)
    (CONNECT_TIMEOUT=3)(RETRY_COUNT=3)
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.136.74.18)(PORT = 1521)) 
    ) 
    (CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = db1.service_name) 
    (UR=A) 
    ))

Impostare la dimensione socket TCP

Impostare la dimensione del socket TCP su un massimo di 128MB per il sistema in locale e l'istanza cloud per prestazioni di trasporto ottimali. Se i valori tra le istanze in locale e cloud non corrispondono, il protocollo di rete negozierà il valore inferiore dei due valori.

  1. Come utente root, controllare la dimensione del socket TCP per il sistema in locale.
    /sbin/sysctl -a | egrep net.core.[w,r]mem_max
    L'output sarà simile a quanto riportato di seguito.
    net.core.rmem_max = 4194304 
    net.core.wmem_max = 2097152
  2. Come utente root, controllare la dimensione del socket TCP per l'istanza cloud.
    /sbin/sysctl -a | egrep net.core.[w,r]mem_max
    L'output sarà simile a quanto riportato di seguito.
    net.core.rmem_max = 134217728
    net.core.wmem_max = 134217728
  3. Se la dimensione del socket TCP dell'istanza cloud non è 128MB o 134217728, modificare le impostazioni del file /etc/sysctl.conf per net.core.wmem_max e net.core.rmem_max in 134217728.