Verbindung zu Autonomous Database on Dedicated Exadata Infrastructure herstellen

Verbindungen von Anwendungen und Tools zu Autonomous Database on Dedicated Exadata Infrastructure werden mit Oracle Net Services (auch als SQL*Net bezeichnet) hergestellt.

Oracle Net Services ermöglicht eine Netzwerksession von einer Clientanwendung zu einem Oracle Database-Server über das Netzwerk, das von der dedizierten Infrastruktur definiert wird, in der die Datenbank gehostet wird. Oracle Cloud-Deployments verwenden ein VCN (virtuelles Cloud-Netzwerk) und ein Subnetz. In der Regel ist das Subnetz als privat definiert, d.h. es gibt keinen öffentlichen Internetzugriff auf Datenbanken. Exadata Cloud@Customer-Deployments verwenden ein VM-Clusternetzwerk.

Sichere Verbindungen zu Autonomous Database

Autonomous Database stellt mehrere Datenbankservicepaare bereit, die für die Verbindung mit der dedizierten Datenbank verwendet werden können. In jedem Paar stellt ein Teil des Paares eine sichere TCP-Verbindung (TCPS) mit dem TLS-Protokoll bereit, und der andere Teil stellt eine TCP-Verbindung bereit. In jeder anderen Hinsicht sind die beiden Teile eines Paares gleich. Um die Sicherheit von Daten während der Übertragung zu gewährleisten, empfiehlt Oracle dringend, eine sichere Verbindung zu verwenden, selbst wenn die Datenbank nur über ein privates Subnetz verfügbar ist. Wenn Sie mit der Verwendung von Oracle Database in Ihrem eigenen Data Center vertraut sind, haben Sie diese sicheren Verbindungen vielleicht noch nie verwendet.

Beim Provisioning einer autonomen Exadata-VM-Clusterressource (AVMC) können Sie:
  • Passen Sie den Listener-Port des Single Client Access Name (SCAN) für Transport Layer Security (TLS) und Nicht-TLS-Verbindungen aus einem Bereich verfügbarer Ports (1024 - 8999) an. Sie können auch die gegenseitige TLS-Authentifizierung (mTLS) auswählen, indem Sie das Kontrollkästchen Gegenseitige TLS-Authentifizierung aktivieren aktivieren.
  • Wählen Sie zwischen einseitiger TLS- und gegenseitiger TLS-(mTLS-)Authentifizierungsmodi. Dies gilt nur für TLS-Zertifikate der Datenbank, da ORDS-Zertifikate einseitige TLS-Zertifikate sind.

Um die sichere Verbindung bereitzustellen, verwendet die Zertifizierungsauthentifizierung einen verschlüsselten Schlüssel, der in einem wallet auf dem Client (auf dem die Anwendung ausgeführt wird) und dem Server ( auf dem Autonomous Database ausgeführt wird) gespeichert ist. Der Schlüssel auf dem Client muss mit dem Schlüssel auf dem Server übereinstimmen, damit eine Verbindung hergestellt werden kann. Ein Wallet enthält eine Sammlung von Dateien, einschließlich des Schlüssels und anderer Informationen, die zum Herstellen einer Verbindung zur Datenbank erforderlich sind. Die gesamte Kommunikation zwischen Client und Server wird verschlüsselt.

Oracle Net Services-(SQL *Net-)Verbindungstypen

Wenn eine Netzwerksession aufgebaut wurde, fungiert Oracle Net Services als Datenkurier für die Clientanwendung und die Datenbank. Es baut die Verbindung zwischen der Clientanwendung und der Datenbank auf, erhält sie aufrecht und ermöglicht den Meldungsaustausch zwischen Anwendung und Datenbank.

Oracle Net Services unterstützt eine Vielzahl von Verbindungstypen zu autonomen Datenbanken, darunter:

  • Oracle Call Interface (OCI), das von vielen in der Sprache C programmierten Anwendungen verwendet wird. Beispiele sind Oracle-Utilitys wie Oracle SQL*Plus, SQL*Loader und Oracle Data Pump.

  • ODBC-Treiber, die von Anwendungen verwendet werden können, welche unter Microsoft Windows ausgeführt werden, sind in einem Layer über Oracle Call Interface (OCI) angeordnet.

  • JDBC-OCI, das von Java-Anwendungen verwendet wird. JDBC OCI fügt für Java-Anwendungen einen Layer über Oracle Call Interface hinzu. Die Oracle SQLcl-Befehlszeilenschnittstelle verwendet JDBC-OCI.

  • JDBC Thin Driver ist ein reiner Java-Treiber auch für Java-Anwendungen. Oracle SQL Developer unterstützt JDBC Thin Driver-Verbindungen.

Drittanbieterprodukte und benutzerdefinierte Anwendungen können jeden dieser Verbindungstypen verwenden.

Oracle Call Interface-(OCI-)Verbindungen und -Wallets

Wallet-Dateien ermöglichen zusammen mit der Datenbankbenutzer-ID und dem Kennwort Zugriff auf Daten in der autonomen Datenbank. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort.

Da Wallet-Dateien Zugriff auf Daten in der Datenbank gewähren können, müssen Sie die Wallet-Dateien nur für autorisierte Benutzer freigeben. Wenn Wallet-Dateien auf eine Art und Weise übertragen werden, bei der die Gefahr des Zugriffs durch nicht autorisierte Benutzer besteht (z.B. über öffentliche E-Mail), übertragen Sie das Wallet-Kennwort separat und sicher.

Hinweis:

Autonomous Database verwendet Komplexitätsregeln für sichere Kennwörter für alle Benutzer basierend auf Oracle Cloud-Sicherheitsstandards. Weitere Informationen zu den Regeln für die Kennwortkomplexität finden Sie unter Datenbankbenutzer erstellen.

Informationen zum Herunterladen von Clientzugangsdaten für Autonomous Database finden Sie unter Clientzugangsdaten herunterladen.

Oracle Net Services kann den Speicherort des Autonomous Database-Wallets mit dem Parameter WALLET_LOCATION in sqlnet.ora finden. file.When WALLET_LOCATION wird verwendet. Oracle Net Services verwendet automatisch das Wallet. Das Wallet wird transparent für die Anwendung verwendet. Informationen zum Festlegen von WALLET_LOCATION finden Sie unter ODBC- und JDBC Oracle Call Interface-(OCI-)Verbindungen vorbereiten.

Namen vordefinierter Datenbankservices für autonome Datenbanken

Autonomous Database on Dedicated Exadata Infrastructure stellt mehrere Sets von Datenbankservices für die Verbindung mit der Datenbank bereit. In jedem Set stellt ein Service eine sichere TCP-Verbindung (TCPS) mit dem TLS-Protokoll bereit und ein anderer eine TCP-Verbindung.

Für jeden der oben genannten Datenbankverbindungsservices wird eine Verbindungszeichenfolge erstellt. Sie können diese Verbindungszeichenfolgen über die Oracle Cloud Infrastructure-(OCI-)Konsole anzeigen, wie unter Verbindungszeichenfolgen für eine Autonomous Database-Instanz anzeigen beschrieben.

Diese Verbindungsservices unterstützen verschiedene Arten von Datenbankvorgängen:
  • tpurgent_tls und tpurgent: Für zeitkritische Transaktionsverarbeitungsvorgänge mit hoher Priorität.
  • tp_tls und tp: Für typische Transaktionsverarbeitungsvorgänge.
  • high_tls und high: Für Berichte mit hoher Priorität und Batchvorgänge.
  • medium_tls und mittel: Für typische Berichts- und Batchvorgänge.
  • low_tls und low: Für Berichte mit niedriger Priorität und Batchvorgänge.

Die Datenbanken, die für die Verwendung von Autonomous Data Guard konfiguriert sind, verfügen über zwei zusätzliche Services mit denselben Verbindungstypen (TCPS und TCP) zur Standby-Datenbank für schreibgeschützten Zugriff.

In einer Multi-Standby-Umgebung wird automatisch für _ro-Serviceverbindungen festgelegt, bei welcher Standbydatenbank eine Verbindung hergestellt werden soll. Bei Bedarf können Sie die Verbindungszeichenfolge jedoch manuell bearbeiten, um eine Verbindung zu einer anderen Standbydatenbank herzustellen.

Hinweis:

In den folgenden vordefinierten Datenbankservicenamen gibt _ro Verbindungen für schreibgeschützten Zugriff an, und _ss gibt Verbindungen zu Snapshot-Standbydatenbanken an.
Diese Verbindungsservices unterstützen auch verschiedene Arten von Datenbankvorgängen:
  • tpurgent_ro_tls, tpurgent_ro, tpurgent_ss_tls und tpurgent_ss: Für zeitkritische Transaktionsverarbeitungsvorgänge mit hoher Priorität.
  • tp_ro_tls, tp_ro, tp_ss_tls und tp_ss: Für typische Transaktionsverarbeitungsvorgänge.
  • high_ro_tls, high_ro, high_ss_tls und high_ss: Für Berichte mit hoher Priorität und Batchvorgänge.
  • medium_ro_tls, medium_ro, medium_ss_tls und medium_ss: Für typische Reporting- und Batchvorgänge.
  • low_ro_tls, low_ro, low_ss_tls und low_ss: Für Berichte mit niedriger Priorität und Batchvorgänge.

Autonomous Transaction Processing unterstützt alle oben genannten Verbindungsservices (tpurgent, tp, high, medium und low). Im Gegensatz dazu kann Autonomous Data Warehouse nur eine Verbindung zu den Verbindungsservices niedrig, mittel und hoch herstellen.

Datenbanken, die mit CPU-Overprovisioning bereitgestellt werden, können sich nur bei Folgendem anmelden:
  • tp- und low-Services für Autonomous Transaction Processing und
  • low-Services für Autonomous Data Warehouse

Hauptmerkmale der vordefinierten Datenbankservices

  • Nebenläufige Anweisungen: Die maximale Anzahl an SQL-Anweisungen, die eine autonome Datenbank für eine Consumer-Gruppe verarbeiten kann, bevor die Anweisungen in die Queue gestellt werden.
  • Parallelitätsgrad: Die parallele Ausführung ist ein Feature von Autonomous Database on Dedicated Exadata Infrastructure, das mehrere Prozesse zur Ausführung einer einzelnen SQL-Anweisung erstellt und verwendet. Der Parallelitätsgrad gibt die Anzahl der Prozesse an, die verwendet werden können. Aufgrund der Performanceverringerung durch die Erstellung zusätzlicher Prozesse lohnt sich die parallele Ausführung im Allgemeinen in folgenden Fällen:
    • Die Abfrage referenziert ein großes Dataset.
    • Es gibt wenig Nebenläufigkeit.
    • Die verstrichene Zeit ist entscheidend.
  • Resource Shares: Autonomous Database on Dedicated Exadata Infrastructure verwendet Consumer-Gruppen von Oracle Database Resource Manager, um jedem Datenbankservicepaar verschiedene Ressourcenzuweisungen bereitzustellen. Ressourcenshares definieren den Anteil der Ressourcen, die für eine Consumer-Gruppe garantiert werden. Eine Consumer-Gruppe kann jedoch mehr als ihre Ressourcenshares verwenden, wenn keine Ressourcenkonflikte vorhanden sind.
  • FAN aktiviert: Gibt an, ob "Schnelle Anwendungsbenachrichtigung" standardmäßig aktiviert ist.
  • TAC aktiviert: Gibt an, ob Transparent Application Continuity standardmäßig aktiviert ist.
In der folgenden Tabelle werden die verschiedenen Sets von Datenbankservices basierend auf den oben beschriebenen Merkmalen verglichen.
Servicenamen Parallelitätsgrad Ressourcenshares Nebenläufige Anweisungen FAN aktiviert TAC aktiviert
tpurgent_tls, tpurgent, tpurgent_ro_tls, tpurgent_ro, tpurgent_ss_tls und tpurgent_ss Manuell festgelegt 12 300 x OCPUs oder 75 x ECPUs Ja Ja
tp_tls, tp, tp_ro_tls, tp_ro, tp_ss_tls und tp_ss 1 8 300 x OCPUs oder 75 x ECPUs Ja Ja
high_tls, high, high_ro_tls, high_ro, high_ss_tls und high_ss 1 x OCPUs oder 0,5 x ECPUs 4 3 Ja Nr.
medium_tls, medium, medium_ro_tls, medium_ro, medium_ss_tls und medium_ss 4 2 1,25 × Anzahl OCPUs oder 0,25125 x ECPUs Ja Nr.
low_tls, low, low_ro_tls und low_ro, low_ss_tls und low_ss 1 1 300 x OCPUs oder 75 x ECPUs Ja Nr.

Dabei ist die Anzahl OCPUs oder ECPUs die CPU-Anzahl, die in der Oracle Cloud-Konsole angezeigt wird.

Die Anzahl der nebenläufigen Anweisungen, die von den tp- und low-Services mit CPU-Overprovisioning unterstützt werden, wird genauso berechnet wie für vollständige OCPUs oder ECPUs, d.h. 300 x OCPUs oder 150 x ECPUs. Beispiel: Bei einem Wert von 0,5 OCPUs beträgt die Summe der nebenläufigen Anweisungen, die von tp- und niedrigen Services verarbeitet werden können, 300 X 0,5, also 150.

Hinweis:

Nachdem Sie die Verbindung zur Datenbank mit einem Service hergestellt haben, versuchen Sie nicht, diese Verbindung zu einem anderen Service zu wechseln, indem Sie die Consumer-Gruppe der Verbindung manuell ändern. Beachten Sie, dass Autonomous Database mehr Aktionen ausführt, um die Verbindung zu konfigurieren, als nur ihre Consumer-Gruppe beim Herstellen einer Verbindung zu Ihrer Datenbank über einen Service festzulegen.

Verbindung zu Autonomous Database mit einer Clientanwendung herstellen

Autonomous Database ist für die Unterstützung von Oracle Net Services über einen TNS-Listener vorkonfiguriert, der für die Verwendung von TCPS-Verbindungen (mit Clientzugangsdaten gesichert) oder TCP-Verbindungen konfiguriert ist.

Der Clientrechner muss für die Verwendung von Oracle Net Services für die Verbindung zu Autonomous Database vorbereitet sein. Anwendungen können mit einem der von Oracle Net Services unterstützten Verbindungstypen eine Verbindung zu Autonomous Database herstellen.

In den folgenden Schritten wird die Verbindung zu Autonomous Database mit einer Clientanwendung beschrieben:

  1. Bestimmen Sie den von der Anwendung verwendeten Verbindungstyp (z.B. OCI, ODBC, JDBC Thin usw.).

  2. Bereiten Sie den Clientrechner für den von der Anwendung verwendeten Verbindungstyp vor:
    • Oracle Call Interface-(OCI-, ODBC- und JDBC OCI-Verbindungen: Sie bereiten Oracle Call Interface-(OCI-, ODBC- und JDBC OCI-Verbindungen vor, indem Sie Oracle Instant Client herunterladen und installieren und dann die Clientzugangsdaten für Autonomous Database herunterladen und für Oracle Instant Client verfügbar machen.

      Schrittweise Anweisungen finden Sie unter ODBC- und JDBC Oracle Call Interface-(OCI-)Verbindungen vorbereiten.

    • JDBC Thin-Verbindungen vorbereiten: Sie bereiten JDBC Thin-Verbindungen vor, indem Sie den Oracle Database JDBC-Treiber herunterladen und installieren und dann die Clientzugangsdaten für Autonomous Database herunterladen und für den Oracle Database JDBC-Treiber verfügbar machen.

      Schrittweise Anweisungen finden Sie unter JDBC Thin-Verbindungen vorbereiten.

  3. Richten Sie die Verbindung in der Anwendung ein.

    Die zur Vorbereitung des Clientrechners erforderlichen Schritte sind von dem von der Clientanwendung verwendeten Verbindungstyp abhängig. In allen Fällen müssen Clientzugangsdaten in Form der Wallet-Datei auf den Client heruntergeladen werden.

Anwendungen mit integrierter Unterstützung für Wallet-ZIP-Dateien

In einigen Anwendungen können Sie eine Zugangsdaten-ZIP-Datei als Teil der Verbindungseigenschaften auswählen.

Beispiel: Wählen Sie in SQL Developer 18.3 und höher im Feld Verbindungstyp den Wert Cloud Wallet aus, mit dem Sie eine Zugangsdaten-ZIP-Datei im Feld Konfigurationsdatei auswählen können. SQL Developer zeigt dann eine Liste der verfügbaren Verbindungen im Feld Service an (die Verbindungen sind in den Zugangsdatendateien enthalten).

Wenn die Anwendung Wallets unterstützt oder spezielle Unterstützung für eine Autonomous Database-Verbindung bereitstellt, z.B. Oracle SQL Developer, empfiehlt Oracle, diesen Verbindungstyp zu verwenden.

Verbindung zu Autonomous Database mit Oracle Database-Tools herstellen

Oracle Database-Tools wie Database Actions, SQL Developer, SQLcl und SQL*Plus können mit Autonomous Database verwendet werden.

Die folgenden Themen enthalten schrittweise Anweisungen für die Verbindung zu Autonomous Database mit Oracle Database-Tools:

Mit Microsoft .NET, Visual Studio und Visual Studio Code verbinden

Oracle Autonomous Database on Dedicated Exadata Infrastructure unterstützt die Verbindung zu Microsoft .NET Framework, .NET Core, Visual Studio und Visual Studio Code.

Oracle Data Provider for .NET (ODP.NET) bietet ADO.NET-Laufzeitdatenzugriff auf eine Autonomous Database. ODP.NET verfügt über die folgenden Treibertypen:

  • Nicht verwaltetes ODP.NET für .NET Framework-Anwendungen

  • Verwaltetes ODP.NET für .NET Framework-Anwendungen

  • ODP.NET Core für .NET Core-Anwendungen

Oracle Developer Tools for Visual Studio bietet Designzeitunterstützung für Datenbankanwendungen in Visual Studio, einschließlich Tools zur Verwaltung autonomer Datenbanken in Oracle Cloud.

Oracle Developer Tools for VS Code bietet Designzeitunterstützung für Datenbankanwendungen in Visual Studio Code.

Diese Softwarekomponenten stehen als kostenloser Download auf folgenden Sites zur Verfügung:

Oracle empfiehlt die Verwendung der neuesten Provider- und Toolversion mit einer Autonomous Database.

Anweisungen zur Einrichtung

Anweisungen zum Herunterladen, Installieren und Konfigurieren dieser Komponenten für die Verwendung mit Oracle Autonomous Database on Dedicated Exadata Infrastructure finden Sie unter .NET-Anwendungen für Oracle Autonomous Database entwickeln:

Beachten Sie, dass diese Anweisungen zeigen, wie Sie TCPS-Verbindungen (TCP mit SSL) zur Datenbank herstellen. Dafür sind Wallets erforderlich. Bei Datenbanken in einer dedizierten Infrastruktur können Sie stattdessen TCP-Verbindungen zur Datenbank herstellen, für die Sie kein Wallet verwenden müssen.

Weitere Informationen zur Verwendung von Oracle Autonomous Database on Dedicated Exadata Infrastructure und .NET finden Sie in der kostenlosen .NET-Entwicklung mit Oracle Autonomous Database - Schnellstart. In dieser Übung wird beschrieben, wie Sie einen .NET-Webserver auf Oracle Cloud Infrastructure einrichten, der eine Verbindung zu Autonomous Database herstellt. Als Nächstes führt die Übung die Entwicklung und Bereitstellung einer einfachen ASP.NET Core-Webanwendung durch, die alle diese Komponenten verwendet. Am Ende haben Sie eine lebende, funktionierende Website im Internet.

Verbindung zu Autonomous Database mit Skriptsprachen herstellen

Sie können Programme in verschiedenen Sprachen verwenden, einschließlich Python, Node.js, PHP, Ruby, R, Go und Perl, um eine Verbindung zu Oracle Autonomous Database on Dedicated Exadata Infrastructure herzustellen. Sicherheit wird mit Clientzugangsdaten durchgesetzt.

Diese Skriptsprachen verfügen über Datenbankzugriff-APIs oder Treiber, die die die Oracle Call Interface-(OCI-)Librarys verwenden. Die OCI-Librarys können entweder vom vollständigen Oracle-Client oder von Oracle Instant Client stammen.

In den folgenden Artikeln finden Sie Schritt-für-Schritt-Anweisungen zum Herstellen einer Verbindung zu Autonomous Database mit verschiedenen Skriptsprachen:

Mit Oracle Cloud Infrastructure FastConnect verbinden

Mit Oracle Cloud Infrastructure FastConnect können Sie Ihr On-Premise-Netzwerk über FastConnect Public Peering mit Autonomous Database verbinden. FastConnect bietet Optionen mit höherer Bandbreite sowie ein zuverlässigeres und konsistenteres Netzwerk als bei internetbasierten Verbindungen.

Mit FastConnect können Sie auf Services in Oracle Cloud Infrastructure zugreifen, ohne das Internet zu verwenden, z.B. Object Storage oder die Oracle Cloud Infrastructure-Konsole und -APIs. Ohne FastConnect würde der für öffentliche IP-Adressen bestimmte Traffic über das Internet geleitet werden. Mit FastConnect wird der Traffic über Ihre private physische Verbindung geführt.

Details zur Verbindung von Autonomous Database mit Oracle Cloud Infrastructure FastConnect finden Sie unter Überblick über FastConnect.