Daten mit Oracle Data Pump in Objektspeicher exportieren - Eigenschaft DEFAULT_CREDENTIAL festlegen

Zeigt die Schritte zum Exportieren von Daten aus Autonomous Database in Cloud Object Storage mit Oracle Data Pump-Export und zum Festlegen der Eigenschaft DEFAULT_CREDENTIAL an.

Oracle empfiehlt, die neueste Oracle Data Pump-Version für den Export von Daten aus Autonomous Database in andere Oracle-Datenbanken zu verwenden, da diese Verbesserungen und Fixes für eine bessere Erfahrung enthält. Laden Sie die neueste Version von Oracle Instant Client herunter, und laden Sie das Toolpackage, das Oracle Data Pump enthält, für Ihre Plattform von Oracle Instant Client-Downloads herunter. Die Installationsschritte, die nach dem Herunterladen von Oracle Instant Client und dem Toolpackage erforderlich sind, finden Sie in den Installationsanweisungen auf der Downloadseite für die Plattforminstallation.

Hinweis

Database Actions stellt einen Link für Oracle Instant Client bereit. Um über Database Actions auf diesen Link zuzugreifen, klicken Sie unter Downloads auf Oracle Instant Client herunterladen.
  1. Stellen Sie eine Verbindung zur autonomen Datenbank her.
  2. Speichern Sie Ihre Zugangsdaten für die Cloud-Objektspeicher mit DBMS_CLOUD.CREATE_CREDENTIAL. Beispiel:
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'user1@example.com',
        password => 'password'
      );
    END;
    /

    Die Werte, die Sie für username und password angeben, hängen vom verwendeten Cloud-Objektspeicherservice ab.

    Wenn Sie in Oracle Cloud Infrastructure Object Storage exportieren, können Sie die nativen URIs oder Swift-URIs von Oracle Cloud Infrastructure verwenden. Die Zugangsdaten müssen jedoch Authentifizierungstoken sein. Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL.

  3. Legen Sie als ADMIN-Benutzer die in Schritt 2 definierten Zugangsdaten als Standardzugangsdaten für die Datenbank fest. Beispiel:
    ALTER DATABASE PROPERTY SET DEFAULT_CREDENTIAL = 'ADMIN.DEF_CRED_NAME'

    Der Wert DEFAULT_CREDENTIAL kann kein OCI-Ressourcen-Principal, Azure-Service-Principal, Amazon-Ressourcenname (ARN) oder Google-Serviceaccount sein. Weitere Informationen zur Authentifizierung auf Basis von Resource Principals finden Sie unter Policys und Rollen für den Zugriff auf Ressourcen konfigurieren.

  4. Führen Sie Data Pump Export aus, wobei der Parameter dumpfile auf die URL für einen vorhandenen Bucket in Ihrem Cloud-Objektspeicher gesetzt wird (mit einem Dateinamen oder einem Dateinamen mit einer Substitutionsvariable, wie exp%L.dmp). Beispiel:
    expdp admin/password@db2022adb_high \
         filesize=5GB \
         dumpfile=default_credential:https://namespace-string.objectstorage.us-ashburn-1.oci.customer-oci.com/n/namespace-string/b/bucketname/o/exp%L.dmp \
         parallel=16 \
         encryption_pwd_prompt=yes \
         logfile=export.log \
         directory=data_pump_dir
    

    Hinweise zu Data Pump-Parametern:

    • Wenn Sie während des Exports mit expdp den Parameter encryption_pwd_prompt=yes verwenden, verwenden Sie encryption_pwd_prompt=yes mit dem Import und dasselbe Kennwort beim impdp-Prompt, das Sie beim Export angegeben haben.

    • Der Parameter dumpfile unterstützt zusätzlich zu den Legacy-Platzhaltern %U und %u die Platzhalter %L und %l. Beispiel: dumpfile=export%L.dmp. Verwenden Sie den Platzhalter %L oder %l für Exporte aus Oracle Database Release 12.2 und höher. Dieser Platzhalter erweitert den Namen der Dumpdatei in eine 3-stellige Ganzzahl mit variabler Breite, die bei 100 beginnt und bei 2147483646 endet.

    • Wenn sich Ihr Bucket und Ihre Daten nicht in einer kommerziellen Realm (OC1) befinden, in der OCI Dedicated Endpoints nicht unterstützt werden, verwenden Sie das folgende URI-Format für dumpfile:

      https://objectstorage.region.oraclecloud.com/n/namespace-string/b/bucketname/o/filename
    Bei dumpfile verwendet dieses Beispiel das empfohlene URI-Format mit OCI Dedicated Endpoints für die kommerzielle Realm (OC1). namespace-string ist der Oracle Cloud Infrastructure-Objektspeicher-Namespace, und bucketname ist der Bucket-Name. Weitere Informationen finden Sie unter Dedizierte Object Storage-Endpunkte, Regionen und Availability-Domains und Object Storage-Namespaces.

    Das Schlüsselwort default_credential im Parameter dumpfile ist erforderlich.

    Um die beste Exportperformance zu erzielen, verwenden Sie den Datenbankservice HIGH für Ihre Exportverbindung, und setzen Sie den Parameter parallel auf ein Viertel der Anzahl der ECPUs (.25 x ECPU-Anzahl). Wenn Sie ein OCPU-Compute-Modell verwenden, legen Sie den parallelen Parameter auf die Anzahl der OCPUs fest (1 x OCPU-Anzahl).

    Informationen dazu, welcher Datenbankservicename für die Ausführung des Data Pump-Exports verwendet werden soll, finden Sie unter Nebenläufigkeit und Prioritäten in Autonomous Database verwalten.

    Informationen zum URL-Format der Dumpdatei für verschiedene Cloud Object Storage-Services finden Sie unter URI-Formate für DBMS_CLOUD.

    In diesem Beispiel werden die empfohlenen Parameter für den Export aus Autonomous Database gezeigt. Beachten Sie für diese expdp-Parameter Folgendes:

    • Der maximale Parameterwert filesize beträgt 10000 MB für Oracle Cloud Infrastructure Object Storage-Exporte.

    • Der maximale Parameterwert filesize beträgt 20 GB für Oracle Cloud Infrastructure Object Storage Classic-Exporte.

    • Wenn die angegebene filesize zu groß ist, zeigt der Export die Fehlermeldung an:

      ORA-17500: ODM err:ODM HTTP Request Entity Too Large
    • Der Parameter directory gibt das Verzeichnis data_pump_dir für die angegebene Logdatei an, export.log. Weitere Informationen finden Sie unter Auf Logdateien für Data Pump-Export Zugriff.

    Oracle Data Pump unterteilt jeden Teil der Dumpdatei in kleinere Chunks, um schnellere Uploads zu ermöglichen. In der Oracle Cloud Infrastructure Object Storage-Konsole werden für jeden exportierten Teil der Dumpdatei mehrere Dateien angezeigt. Die Größe der tatsächlichen Dumpdateien wird als null (0) angezeigt und die Größe der zugehörigen Datei-Chunks als 10 MB oder weniger. Beispiel:

    exp100.dmp
    exp100.dmp_aaaaaa
    exp101.dmp
    exp101.dmp_aaaaaa

    Wenn Sie die Null-Byte-Dumpdatei aus der Oracle Cloud Infrastructure-Konsole oder mit der Oracle Cloud Infrastructure-CLI herunterladen, erhalten Sie nicht die vollständigen Dumpdateien. Um die vollständigen Dumpdateien aus dem Objektspeicher herunterzuladen, verwenden Sie ein Tool wie cURL, das Swift unterstützt. Geben Sie Ihre Benutzeranmeldung und Ihr Swift-Authentifizierungstoken an. Beispiel:

    curl -O -v -X GET -u 'user1@example.com:auth_token' \
       https://swiftobjectstorage.us-ashburn-1.oraclecloud.com/v1/namespace-string/bucketname/exp100.dmp

    Wenn Sie eine Datei mit den DBMS_CLOUD-Prozeduren importieren, die den Parameter format type mit dem Wert "datapump" unterstützen, müssen Sie nur den Namen der primären Datei angeben. Die Prozeduren, die den Formattyp "datapump" unterstützen, ermitteln die Chunks und laden Sie sie automatisch herunter.

    Wenn Sie DBMS_CLOUD.DELETE_OBJECT verwenden, erkennt und löscht die Prozedur automatisch die Chunks, wenn die Prozedur die primäre Datei löscht.

  5. Führen Sie die erforderlichen Schritte aus, um den Oracle Data Pump-Import und die Bereinigung zu verwenden.
Hinweis

Um einen vollständigen Export durchzuführen oder Objekte zu exportieren, deren Eigentümer andere Benutzer sind, benötigen Sie die Rolle DATAPUMP_CLOUD_EXP.

Ausführliche Informationen zu Oracle Data Pump-Exportparametern finden Sie in Oracle Database-Utilitys.