Listener und SQLNet.ora konfigurieren

Konfigurieren Sie die Listener auf allen Knoten für Oracle Database Exadata Cloud Service und Oracle Exadata Database Machine vor Ort.

Statischer Listener zur Standby-Instanz hinzufügen

Fügen Sie einen statischen Listener zu Grid Home auf der Oracle Database Exadata Cloud Service-Instanz hinzu.

  1. Erstellen Sie eine Listener-Datei auf Knoten 1 der Oracle Database Exadata Cloud Service-Instanz.
    Im Folgenden finden Sie eine Beispieldatei. Ändern Sie GLOBAL_DBNAME und SID_NAME für Ihre Umgebung.
    [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. Melden Sie sich als Benutzer opc beim Knoten an.
    ssh -i cluster.key opc@10.255.195.131
  3. Sudo zum Benutzer grid.
    sudo su - grid
  4. Aktualisieren der Umgebung.
    $ . oraenv
    ORACLE_SID = [DB11] ? +ASM1
    Die Ausgabe sieht wie folgt aus:
    The Oracle base has been changed from /u02/app/oracle to /u01/app/grid
  5. Bestätigen Sie, dass sich die Listener-Dateien im Verzeichnis $ORACLE_HOME/network/admin befinden.
    cd $ORACLE_HOME/network/admin
    ls -lrt
  6. Listener neu laden.
    [grid@exacs82-vm3sv1 admin]$ lsnrctl reload
  7. Prüfen Sie den Status des Listeners.
    [grid@exacs82-vm3sv1 admin]$ lsnrctl status
    Die Ausgabe sieht wie folgt aus:
    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. Suchen Sie nach dem Knoten, um den Listener zu prüfen.
    lsnrctl services | grep DB1
    Die Ausgabe sieht in etwa wie folgt aus:
    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. Oracle Database Exadata Cloud Service-Instanz starten.
    [oracle@exacs82-vm3sv1 ~]$ sqlplus / as sysdba
    SQL> startup mount;

SQL Net.Ora konfigurieren

Konfigurieren und kopieren Sie die Datei sqlnet.ora auf alle Knoten der primären und Standby-Exadata-Instanzen, einschließlich des Grid-Standardverzeichnisses. Die SQLNET. ora-Konfiguration muss in Oracle Exadata Database Machine und Oracle Database Exadata Cloud Service vor Ort vorhanden sein.

Im Folgenden finden Sie einen Snap-shot der Werte auf den Knoten.

Der Speicherort der Wallet-Datei muss in der Datei SQLNet.ora sowohl in den primären als auch in den Standby-Exadata-Instanzen vorhanden sein. Stellen Sie sicher, dass in der Datei SQLNET.ora keine Zeilenumbrüche oder Leerzeichen vorhanden sind.

  1. Melden Sie sich bei Oracle Home Node 1 Ihres primären Exadata vor Ort an, und legen Sie dann sqlnet.ora fest.
    [oracle@exa11db01 admin]$ cat sqlnet.ora 
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Melden Sie sich bei Oracle Home Node 2 Ihres primären Exadata vor Ort an, und legen Sie dann sqlnet.ora fest.
    [oracle@exa11db02 admin]$ cat sqlnet.ora 
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Melden Sie sich bei Grid-Home-Knoten 1 Ihres primären Exadata vor Ort an, und legen Sie dann sqlnet.ora fest.
    [oracle@exa11db01 admin]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Melden Sie sich bei Grid-Home-Knoten 2 Ihres primären Exadata vor Ort an, und legen Sie dann sqlnet.ora fest.
    [oracle@exa11db02 admin]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Melden Sie sich bei Knoten 1 Ihres Standby-Oracle Database Exadata Cloud Service an, und legen Sie dann sqlnet.ora fest.
    [oracle@exacs82-vm3sv1 DB1]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Melden Sie sich bei Knoten 2 Ihres Standby-Oracle Database Exadata Cloud Service an, und legen Sie dann sqlnet.ora fest.
    [oracle@exacs82-vm3sv2 DB1]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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. Melden Sie sich bei Grid Home-Knoten 1 Ihres Standby-Oracle Database Exadata Cloud Service an, und legen Sie dann sqlnet.ora fest.
    [grid@exacs82-vm3sv1 admin]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    #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. Melden Sie sich bei Grid Home-Knoten 2 Ihres Standby-Oracle Database Exadata Cloud Service an, und legen Sie dann sqlnet.ora fest.
    [grid@exacs82-vm3sv2 admin]$ cat sqlnet.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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

Instanz- und Datenbanknamen auf allen Knoten aktualisieren

Ändern Sie die Instanz- und Datenbanknamen in der Datei tnsnames.ora auf allen Knoten des primären On-Premise-Exadata und des StandbyOracle Database Exadata Cloud Service. Einträge für jede Datenbank werden sowohl in Primär- als auch in Standby-tnsnames.ora-Dateien für den ordnungsgemäßen redo-Transport benötigt.

In diesem Beispiel.

  • DB1: Primärer Oracle Exadata Database Machine-DB-Name vor Ort
  • db11: Datenbankinstanzname auf Knoten 1
  • db12: Datenbankinstanzname auf Knoten 2
  • DB1_phx3g7: Eindeutiger Oracle Database Exadata Cloud Service-Instanzname.
  • DB11: Oracle Database Exadata Cloud Service-Instanzname 1 auf Knoten 1
  • DB12: Oracle Database Exadata Cloud Service-Instanzname 2 auf Knoten 2

Wenn in der primären Datenbank ein TNS-Eintrag in der On-Premise-Datei tnsnames.ora mit einem Servernamen für HOST vorhanden ist, ändern Sie stattdessen den Servernamen in diesem Eintrag, um die IP-Adresse für den Host zu verwenden. IP-Adressen werden verwendet, da zwischen On-Premise- und Cloud-Umgebungen kein DNS zur Auflösung von Servernamen in IP-Adressen vorhanden ist.

Oracle Real Application Clusters (Oracle RAC)-Konfigurationen können den Scan-Listener nicht auflösen. Daher müssen Sie eine Adressliste verwenden, die alle Knoten auflistet. Diese werden später hinzugefügt. Die anfängliche Instanz sollte nur eine IP in den TNS-Einträgen auflisten, um sicherzustellen, dass Oracle Recovery Manager (RMAN) immer eine Verbindung zu denselben Knoten herstellt

Im folgenden Beispiel ersetzen Sie Werte, die für die Konfiguration relevant sind.

  1. Aktualisieren Sie auf Knoten 1 Ihres primären Exadata vor Ort den Service-Namen und Instanznamen in der Datei tnsnames.ora.
    [oracle@exa11db01 admin]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Aktualisieren Sie auf Knoten 2 Ihres primären Exadata vor Ort den Service-Namen und Instanznamen in der Datei tnsnames.ora.
    [oracle@exa11db02 admin]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    # 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. Aktualisieren Sie auf Grid-Home-Knoten 1 Ihres primären Exadata vor Ort den Service-Namen und Instanznamen in der Datei tnsnames.ora.
    [oracle@exa11db01 admin]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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. Melden Sie sich bei Knoten 1 Ihres Standby-Oracle Database Exadata Cloud Service an, und aktualisieren Sie dann den Service-Namen und Instanznamen in der Datei tnsnames.ora.
    [oracle@exacs82-vm3sv1 DB1]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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. Aktualisieren Sie in Knoten 2 Ihres Standby-Oracle Database Exadata Cloud Service den Service-Namen und Instanznamen in der Datei tnsnames.ora.
    [oracle@exacs82-vm3sv2 DB1]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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. Melden Sie sich bei Grid Home-Knoten 1 Ihres Standby-Oracle Database Exadata Cloud Service an, und legen Sie dann sqlnet.ora fest.
    [grid@exacs82-vm3sv1 admin]$ cat tnsnames.ora
    Im Folgenden finden Sie ein Beispiel für die Ausgabe.
    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) 
    ))

TCP-Socketgröße festlegen

Stellen Sie die TCP-Socketgröße für das On-Premise-System und die Cloud-Instanz auf maximal 128MB ein, um eine optimale Transportleistung zu erzielen. Wenn die Werte zwischen On-Premise- und Cloud-Instanzen nicht übereinstimmen, verhandelt das Netzwerkprotokoll den unteren der beiden Werte.

  1. Prüfen Sie als Root-Benutzer die TCP-Socketgröße für das On-Premise-System.
    /sbin/sysctl -a | egrep net.core.[w,r]mem_max
    Die Ausgabe sieht wie folgt aus:
    net.core.rmem_max = 4194304 
    net.core.wmem_max = 2097152
  2. Prüfen Sie als Root-Benutzer die TCP-Socketgröße für die Cloud-Instanz.
    /sbin/sysctl -a | egrep net.core.[w,r]mem_max
    Die Ausgabe sieht wie folgt aus:
    net.core.rmem_max = 134217728
    net.core.wmem_max = 134217728
  3. Wenn die TCP-Socketgröße Ihrer Cloud-Instanz nicht 128MB oder 134217728 beträgt, bearbeiten Sie die /etc/sysctl.conf-Dateieinstellungen für net.core.wmem_max und net.core.rmem_max bis 134217728.