Verbindung mit einer Exadata Cloud Infrastructure-Instanz herstellen

In diesem Thema wird erläutert, wie Sie mit SSH oder SQL Developer eine Verbindung zu einer Exadata Cloud Infrastructure-Instanz herstellen.

Der Verbindungstyp hängt davon ab, wie Ihr Cloud-Netzwerk eingerichtet ist. Informationen zu verschiedenen Netzwerkszenarios finden Sie unter Networking - Überblick. Für spezielle Empfehlungen zum Herstellen einer Verbindung zu einer Datenbank in der Cloud wenden Sie sich an den Netzwerksicherheitsadministrator.

Hinweis

Exadata Cloud Infrastructure-Server können nicht mit Active Directory-Domains verknüpft werden. Zudem wird die Verwendung von Active Directory für die Benutzerauthentifizierung und -autorisierung nicht vom Service unterstützt.

Voraussetzungen

Liste der Anforderungen für den SSH-Zugriff auf einen Compute Node in einer Exadata Cloud Infrastructure-Instanz.

Sie benötigen Folgendes:

  • Den vollständigen Pfad zu der Datei mit dem Private Key, der mit dem beim Starten des Systems verwendeten Public Key verknüpft ist.

  • Die öffentliche oder private IP-Adresse der Exadata Cloud Infrastructure-Instanz.

    Verwenden Sie die private IP-Adresse, um eine Verbindung vom On-Premise-Netzwerk oder vom virtuellen Cloud-Netzwerk (VCN) zum System herzustellen. Dazu gehört das Herstellen einer Verbindung von einem Host, der sich On Premise befindet und über ein VPN oder FastConnect eine Verbindung zu Ihrem VCN herstellt, oder von einem anderen Host in demselben VCN. Verwenden Sie die öffentliche IP-Adresse, um von außerhalb der Cloud (ohne VPN) eine Verbindung zum System herzustellen. Sie finden die IP-Adressen wie folgt in der Oracle Cloud Infrastructure-Konsole:

    • Cloud-VM-Cluster (neues Ressourcenmodell): Klicken Sie auf der Seite Exadata-VM-Clusterdetails in der Liste Ressourcen auf "Virtuelle Maschinen".
    • DB-Systeme: Klicken Sie auf der Seite DB-Systemdetails in der Liste Ressourcen auf Knoten.

    Die Werte werden in den Spalten Öffentliche IP-Adresse und Private IP-Adresse und DNS-Name der Tabelle mit den virtuellen Maschinen oder Knoten der Exadata Cloud Infrastructure-Instanz angezeigt.

Verbindungen zu Compute Nodes mit SSH herstellen

Sie können eine Secure Shell-(SSH-)Verbindung zu den Compute Nodes in einem Exadata Cloud Infrastructure-System herstellen.

Die meisten Unix-Systeme (einschließlich Linux, Oracle Solaris und Apple MacOS) umfassen einen SSH-Client. Unter Microsoft Windows können Sie den kostenlosen SSH-Client PuTTY von der folgenden Adresse herunterladen: http://www.putty.org

Verbindung von einem Unix-System herstellen

Verwenden Sie dieses Verfahren, um von einem Unix-System mit SSH auf eine virtuelle Maschine in einem Oracle ExaDB-D-System zuzugreifen.

  • Geben Sie den folgenden SSH-Befehl ein, um auf die virtuelle Maschine zuzugreifen:
    ssh –i private-key user@node

    In der obigen Syntax gilt:

    • private-key ist der vollständige Pfad und Name der Datei, die den SSH-Private Key enthält, der einem im System registrierten Public Key entspricht.
    • user ist der Betriebssystembenutzer, als der Sie die Verbindung herstellen möchten:
      • Um Vorgänge als Eigentümer der Oracle Database-Software auszuführen, stellen Sie die Verbindung als opc und su oracle her. Der Benutzer oracle hat keinen root-Benutzerzugriff auf die virtuelle Maschine.
      • Um Vorgänge auszuführen, die root-Zugriff auf die virtuelle Maschine erfordern, zum Beispiel Patching, stellen Sie die Verbindung als opc her. Der Benutzer opc kann den Befehl sudo -s verwenden, um root-Zugriff auf die virtuelle Maschine zu erhalten.
    • node ist der Hostname oder die IP-Adresse für die virtuelle Maschine, auf die Sie zugreifen möchten.

Verbindung zu einer virtuellen Maschine von einem Microsoft Windows-System aus mit PuTTY herstellen

Hier erfahren Sie, wie Sie über PuTTY von einem Microsoft Windows-System auf eine virtuelle Maschine zugreifen.

Bevor Sie beginnen

Bevor Sie mit dem Programm PuTTY eine Verbindung zu einer virtuellen Maschine herstellen, benötigen Sie Folgendes:
  • IP-Adresse der virtuellen Maschine

  • Die SSH-Private-Key-Datei, die dem Public Key entspricht, der mit dem Deployment verknüpft ist. Diese Private-Key-Datei muss das PuTTY-Format .ppk aufweisen. Wenn die Private-Key-Datei ursprünglich auf der Linux-Plattform erstellt wurde, können Sie sie mit dem Programm PuTTYgen in das .ppk-Format konvertieren.

So stellen Sie mit dem Programm PuTTY unter Windows eine Verbindung zu einer virtuellen Maschine her:

  1. Laden Sie PuTTY herunter, und installieren Sie es.

    Um PuTTY herunterzuladen, gehen Sie zu http://www.putty.org/, und klicken Sie auf den Link Download PuTTY.

  2. Führen Sie das Programm PuTTY (putty.exe) aus.

    Das PuTTY-Konfigurationsfenster wird mit dem Bereich Session angezeigt.

  3. Geben Sie im Feld Host Name (bzw. IP address) den Hostnamen oder die IP-Adresse der virtuellen Maschine ein, auf die Sie zugreifen möchten.
  4. Stellen Sie sicher, dass die Option Connection type auf SSH gesetzt ist.
  5. Blenden Sie gegebenenfalls im Baum Category die Optionen für Connection ein, und klicken Sie auf Data.

    Der Bereich Daten wird angezeigt.

  6. Geben Sie im Feld Auto-login username den Betriebssystembenutzer ein, als der Sie eine Verbindung herstellen möchten:
    1. Stellen Sie als Benutzer opc eine Verbindung her, um Vorgänge auszuführen, die root- oder oracle-Zugriff auf die virtuelle Maschine erfordern, wie Backup oder Patching. Dieser Benutzer kann den Befehl sudo verwenden, um root- oder oracle-Zugriff auf die VM zu erhalten.
  7. Vergewissern Sie sich, dass die Option When username is not specified auf Prompt gesetzt ist.
  8. Blenden Sie im Category-Baum die Optionen für SSH ein, und klicken Sie auf Auth.

    Der Bereich Authentifizierung wird angezeigt.

  9. Klicken Sie neben dem Feld Private key file for authentication auf die Schaltfläche Browse. Navigieren Sie dann im Fenster Private-Key-Datei auswählen zu der Private-Key-Datei, die dem mit dem Deployment verknüpften Public Key entspricht, und öffnen Sie sie.
  10. Klicken Sie im Category-Baum auf Session.

    Der Bereich Session wird angezeigt.

  11. Geben Sie im Feld Saved Sessions einen Namen für die Verbindungskonfiguration ein. Klicken Sie dann auf Save.
  12. Klicken Sie auf Open, um die Verbindung zu öffnen.

    Das PuTTY-Konfigurationsfenster wird geschlossen, und das PuTTY-Terminalfenster wird angezeigt.

    Wenn Sie zum ersten Mal eine Verbindung zu der VM herstellen, wird das PuTTY-Sicherheitsalertfenster angezeigt, in dem Sie zur Bestätigung des Public Keys aufgefordert werden. Klicken Sie auf Ja, um mit der Verbindung fortzufahren.

So greifen Sie nach dem Herstellen einer Verbindung zum Compute Node auf eine Datenbank zu

Um sich bei der Datenbank anzumelden, legen Sie Umgebungsinformationen für die Datenbank fest.

  1. Melden Sie sich als "opc" an, und verbinden Sie sich mit sudo als Benutzer "oracle".
    login as: opc
    			
    [opc@<host_name> ~]$ sudo su - oracle
  2. Rufen Sie die Datei .env der Datenbank ab, um die Umgebung festzulegen.
    
    [oracle@<host_name>]# . <database_name>.env

    Im folgenden Beispiel lautet der Hostname "ed1db01", und der Datenbankname ist "cdb01".

    [oracle@ed1db01]# . cdb01.env
    ORACLE_SID = [root] ? +ASM1
    The Oracle base has been set to /u01/app/grid

Verbindung zum Exadata Cloud Infrastructure-Service herstellen

Erfahren Sie, wie Sie mit SSH eine Verbindung zu einem Exadata Cloud Infrastructure-System herstellen sowie mit Oracle Net Services (SQL*Net) eine Verbindung zu einer Exadata Cloud Infrastructure-Datenbank.

Verbindungen zu Datenbanken mit SQL Developer herstellen

Sie können eine der folgenden Methoden verwenden, um mit SQL Developer eine Verbindung zu einer Datenbank herzustellen:

  • Erstellen Sie einen temporären SSH-Tunnel von Ihrem Rechner zur Datenbank. Diese Methode ermöglicht den Zugriff nur für die Dauer des Tunnels. (Wenn Sie mit der Verwendung der Datenbank fertig sind, schließen Sie den SSH-Tunnel, indem Sie die SSH-Session beenden.)
  • Öffnen Sie den als Oracle-SCAN-Listener verwendeten Port, indem Sie die Sicherheitsliste aktualisieren, die für das Cloud-VM-Cluster oder die DB-Systemressource in der Exadata Cloud Service-Instanz verwendet wird. Der standardmäßige SCAN-Listener-Port ist 1521. Diese Methode ermöglicht einen dauerhaften Zugriff auf die Datenbank. Weitere Informationen finden Sie unter Sicherheitsliste aktualisieren.

Nachdem Sie wie oben beschrieben einen SSH-Tunnel erstellt oder den SCAN-Listener-Port geöffnet haben, können Sie mit SCAN-IP-Adressen oder öffentlichen IP-Adressen eine Verbindung zu einer Exadata Cloud Infrastructure-Instanz herstellen, je nachdem, wie das Netzwerk eingerichtet ist und von wo aus Sie die Verbindung herstellen. Sie finden die IP-Adressen in der Konsole auf der Seite Datenbankdetails.

Verbindungen zu Datenbanken mit Oracle Net Services herstellen

Sie können mit Oracle Net Services Verbindungen zu den virtuellen Maschinen in einem Exadata Cloud Infrastructure-System herstellen.

Verbindungen zu Datenbanken mit Oracle Net Services herstellen

Oracle Database Exadata Cloud Infrastructure unterstützt den Remotedatenbankzugriff über Oracle Net Services.

Da Exadata Cloud Infrastructure Oracle Grid Infrastructure verwendet, können Sie zum Herstellen von Oracle Net Services-Verbindungen Single Client Access Name-(SCAN-)Verbindungen verwenden. SCAN ist ein Feature, das einen einheitlichen Mechanismus für Clients für den Zugriff auf die Oracle Database-Instanzen in einem Cluster bereitstellt.

Der SCAN ist standardmäßig mit drei virtuellen IP-Adressen (VIPs) verknüpft. Jede SCAN-VIP ist auch mit einem SCAN-Listener verknüpft, der einen Verbindungsendpunkt für Oracle Database-Verbindungen bereitstellt, die Oracle Net Services verwenden. Zur Maximierung der Verfügbarkeit verteilt Oracle Grid Infrastructure die SCAN-VIPs und SCAN-Listener auf die verfügbaren Clusterknoten. Wenn ein Knoten heruntergefahren oder fehlerhaft ist, werden die SCAN-VIPs und SCAN-Listener automatisch auf einen der anderen Knoten migriert. Durch die Verwendung von SCAN-Verbindungen können Sie Oracle Database-Clients eine zuverlässige Gruppe von Verbindungsendpunkten bereitstellen, die alle im Cluster ausgeführten Datenbanken verarbeiten können.

Die SCAN-Listener sind zusätzlich zu den Oracle Net-Listenern verfügbar, die auf allen Knoten im Cluster ausgeführt werden. Sie werden auch als Node Listener bezeichnet. Wenn eine Oracle Net Services-Verbindung über eine SCAN-Verbindung hergestellt wird, leitet der SCAN-Listener die Verbindung an einen der Node Listener weiter und spielt bei der Verbindung keine weitere Rolle. Anhand verschiedener Faktoren, einschließlich Listener-Verfügbarkeit, Platzierung der Datenbankinstanz und Workload-Verteilung, wird bestimmt, welcher Node Listener die einzelnen Verbindungen empfängt.

Hinweis

Diese Dokumentation beschreibt grundlegende Voraussetzungen für Verbindungen zu Ihren Exadata Cloud Infrastructure-Datenbanken über Oracle Net Services.

Voraussetzungen für Verbindungen zu Datenbanken mit Oracle Net Services

Prüfen Sie die Voraussetzungen für Verbindungen zu einer Oracle Database-Instanz auf Oracle ExaDB-D mit Oracle Net Services.

Um eine Verbindung zu einer Oracle-Datenbank auf Exadata Cloud Infrastructure mit Oracle Net Services herzustellen, ist Folgendes erforderlich:
  • Die IP-Adressen für Ihre SCAN-VIPs oder der Hostname bzw. die IP-Adresse für eine virtuelle Maschine, welche die Datenbank hostet, auf die Sie zugreifen möchten.
  • Die Datenbank-ID: Entweder die Datenbanksystem-ID (SID) oder ein Servicename.
Verbindungen zu Datenbanken über SCAN herstellen

Zum Herstellen einer Oracle Net Services-Verbindung über die SCAN-Listener gibt es zwei Möglichkeiten.

IP-Adressen mit dem SDK oder der CLI identifizieren

Mit dem SDK oder der OCI-CLI können Sie die IP-Adressen der Exadata Cloud Infrastructure-Compute Nodes identifizieren. Anschließend können Sie über die IP-Adressen eine Verbindung zum System herstellen.

  1. Geben Sie mit der API GetDbNode die Details des Exadata Cloud Infrastructure-dbNode zurück. Beachten Sie die OCIDs, die für die Parameter hostIpId und backupIpId des dbNode zurückgegeben werden.
  2. Anhand der OCIDs in den Parametern hostIpId und backupIpId können Sie mit der API GetPrivateIp die privaten IP-Adressen abrufen, die von den Client- und Backupsubnetzen verwendet werden. Bei öffentlichen Subnetz-IP-Adressen verwenden Sie die API GetPublicIpByPrivateIpId.
Verbindung zu einer Datenbank über einen Verbindungsdeskriptor herstellen, der alle SCAN-VIPs referenziert

Sie können einen Verbindungsdeskriptor für das Oracle Exadata Database Service on Dedicated Infrastructure-System mit mehreren SCAN-Listenern einrichten.

Bei dieser Lösung müssen Sie alle SCAN-VIP-Adressen (Single Client Access Name Virtual IP) angeben. Oracle Net Services kann dann eine Verbindung zu einem verfügbaren SCAN-Listener herstellen.

  1. Verwenden Sie die folgende Vorlage, um einen Net Services-Alias zu definieren, der in der Regel als benutzerfreundlicher Name für den Verbindungsdeskriptor dient:
    alias-name = (DESCRIPTION=
      (ADDRESS_LIST=
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-1)(PORT=1521))
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-2)(PORT=1521))
        (ADDRESS=(PROTOCOL=tcp)(HOST=SCAN-VIP-3)(PORT=1521)))
      (CONNECT_DATA=(sid-or-service-entry)))

    Dabei gilt:

    alias-name ist der Name für den Alias.

    SCAN-VIP-[1–3] sind die IP-Adressen für die SCAN-VIPs.

    sid-or-service-entry identifiziert die Datenbank-SID oder den Servicenamen in einem der folgenden Formate:
    • SID=sid-name. Beispiel: SID=S12C1.
    • SERVICE_NAME=service-name. Beispiel: SERVICE_NAME=PDB1.example.yourcloud.com.
    Hinweis

    Standardmäßig wird von Oracle Net Services nach dem Zufallsprinzip eine der Adressen in der Adressliste ausgewählt, um die Last zwischen den SCAN-Listenern auszugleichen.

Verbindung zu einer Datenbank mit einem Verbindungsdeskriptor herstellen, der einen benutzerdefinierten SCAN-Namen referenziert

Sie können einen Verbindungsdeskriptor für das Oracle Exadata Database Service on Dedicated Infrastructure-System mit einem benutzerdefinierten SCAN-Namen einrichten.

Bei dieser Lösung definieren Sie einen benutzerdefinierten Single Client Access Name (SCAN) in Ihrem Domain Name Server (DNS), der in die drei virtuellen SCAN-IP-Adressen (VIPs) aufgelöst wird.

  1. Verwenden Sie die folgende Vorlage, um einen Net Services-Alias zu definieren, der den benutzerdefinierten SCAN-Namen referenziert:
    alias-name = (DESCRIPTION=
      (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=scan-name)(PORT=1521)))
      (CONNECT_DATA=(sid-or-service-entry)))

    Dabei gilt:

    alias-name ist der Name für den Alias.

    scan-name ist der benutzerdefinierte SCAN-Name.

    sid-or-service-entry identifiziert die Datenbank-SID oder den Servicenamen in einem der folgenden Formate:
    • SID=sid-name. Beispiel: SID=S12C1.
    • SERVICE_NAME=service-name. Beispiel: SERVICE_NAME=PDB1.example.yourcloud.com.
    Alternativ können Sie die Easy-Connect-Methode verwenden, um einen Verbindungsdeskriptor im folgenden Format anzugeben:
    scan-name:1521/sid-or-service-entry
    Beispiel:
    exa1scan.example.com:1521/S12C1
    Oder
    exa1scan.example.com:1521/PDB1.example.yourcloud.com
Verbindungen zu Datenbanken über einen Node Listener herstellen

Um eine Verbindung zu einer Oracle Database-Instanz auf Exadata Cloud Infrastructure mit einem Verbindungsdeskriptor herzustellen, der die SCAN-Listener umgeht, können Sie die Verbindung mit diesem Verfahren direkt an einen Node Listener leiten.

Mit dieser Methode verzichten Sie auf die High Availability und das Load Balancing von SCAN. Diese Option ist jedoch geeignet, wenn Sie Verbindungen an einen bestimmten Knoten oder eine bestimmte Netzwerkschnittstelle leiten möchten. So können Sie beispielsweise sicherstellen, dass Verbindungen von einem Programm, das Bulkdaten lädt, über das Backupnetzwerk hergestellt werden.

Bei dieser Methode verwenden Sie den Hostnamen oder die IP-Adresse des Knotens.

Beispiel 5-1: Net Service-Alias definieren, der den Knoten direkt referenziert

alias-name = (DESCRIPTION=
  (CONNECT_TIMEOUT=timeout)					
  (ADDRESS_LIST=(ADDRESS=(PROTOCOL=tcp)(HOST=node)(PORT=1521)))
  (CONNECT_DATA=(sid-or-service-entry)))

Dabei gilt:

alias-name ist der Name für den Alias.

timeout gibt einen Timeoutzeitraum (in Sekunden) an, mit dem Verbindungsversuche ohne Warten auf einen TCP-Timeout beendet werden können. Der Parameter (CONNECT_TIMEOUT=timeout) ist optional.

node ist der Hostname oder die IP-Adresse für die virtuelle Maschine, die Sie verwenden möchten.

sid-or-service-entry identifiziert die Datenbank-SID oder den Servicenamen in einem der folgenden Formate:
  • SID=sid-name. Beispiel: SID=S12C1.
  • SERVICE_NAME=service-name. Beispiel: SERVICE_NAME=PDB1.example.oraclecloudatcust.com.
Alternativ können Sie die Easy-Connect-Methode verwenden, um einen Verbindungsdeskriptor im folgenden Format anzugeben:
node:1521/sid-or-service-entry
Beispiel:
exa1node01.example.com:1521/S12C1
Oder
exa1node01.example.com:1521/PDB1.example.oraclecloudatcust.com