Daten mit Oracle Data Pump exportieren
Oracle Data Pump bietet eine sehr schnelle Bulkverschiebung von Daten und Metadaten zwischen Autonomous Database und anderen Oracle-Datenbanken.
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.
-
Option 1: Daten mit Data Pump-Export in ein Autonomous Database-Verzeichnis verschieben
Exportieren Sie die Daten mit Oracle Data Pump in ein Verzeichnis in der Datenbank. Verschieben Sie die Daten dann aus dem Verzeichnis in den Cloud-Objektspeicher. Diese Methode kann nützlich sein, wenn Sie Daten aus Ihrer autonomen Datenbank in mehrere Zieldatenbanken verschieben möchten. Anstatt die Daten in mehrere Cloud-Objektspeicher zu exportieren, können Sie ein einzelnes Dumpdateiset erstellen und für mehrere Zieldatenbanken verwenden.
Führen Sie die folgenden Schritte aus, um Daten aus Autonomous Database zu verschieben, indem Sie sie in ein Verzeichnis in Ihrer Datenbank exportieren:- Exportieren Sie Daten in ein Verzeichnis in Autonomous Database, und verschieben Sie das Dumpdateiset aus dem Verzeichnis in den Cloud-Objektspeicher. Weitere Informationen finden Sie unter Daten mit einem Verzeichnis in Autonomous Database exportieren.
- Laden Sie die Dumpdateien aus dem Cloud-Objektspeicher herunter, importieren Sie die Daten in die Zieldatenbank, und bereinigen Sie den Cloud-Objektspeicher. Weitere Informationen finden Sie unter Dumpdateien herunterladen, Data Pump-Import ausführen und Objektspeicher bereinigen.
-
Option 2: Daten mit Data Pump-Export in Objektspeicher verschieben
Bei dieser Exportmethode exportieren Sie Daten mit Oracle Data Pump direkt in den Objektspeicher. Diese Exportmethode wird mit Oracle Cloud Infrastructure Object Storage und Oracle Cloud Infrastructure Object Storage Classic unterstützt. Dadurch wird der Overhead vermieden, der entsteht, wenn Sie ein Dumpdateiset in einem Verzeichnis in Ihrer autonomen Datenbank erstellen und das Dumpdateiset dann in den Cloud-Objektspeicher verschieben. Wenn Sie beabsichtigen, Daten in eine einzelne Zieldatenbank zu verschieben, spart diese Methode Aufwand und beschleunigt den Exportprozess.
Führen Sie die folgenden Schritte aus, um Daten aus Autonomous Database zu verschieben, indem Sie sie direkt in Ihren Objektspeicher exportieren:- Exportieren Sie Daten direkt aus Autonomous Database in einen Cloud-Objektspeicher. Weitere Informationen finden Sie unter Daten direkt aus Autonomous Database in den Objektspeicher exportieren.
- Laden Sie die Dumpdateien aus dem Cloud-Objektspeicher herunter, importieren Sie die Daten in die Zieldatenbank, und bereinigen Sie den Cloud-Objektspeicher. Weitere Informationen finden Sie unter Dumpdateien herunterladen, Data Pump-Import ausführen und Objektspeicher bereinigen.
Daten mit einem Verzeichnis in Autonomous Database exportieren
Mit Data Pump ein Dumpdateiset in Autonomous Database erstellen
-
Erstellen Sie ein Verzeichnis, in dem die Dumpdateien mit den exportierten Daten gespeichert werden. Beispiel:
CREATE DIRECTORY data_export_dir as 'data_export';
-
Führen Sie den Data Pump-Export aus, wobei der Parameter dumpfile festgelegt ist, der Parameter filesize auf einen Wert unter 50G gesetzt und der Parameter directory festgelegt ist. Das folgende Beispiel zeigt, wie Sie ein Schema namens
SALES
in einer Autonomous Database namensATPC1
mit 64 ECPUs exportieren:expdp sales/password@ATPC1_high directory=data_export_dir dumpfile=exp%L.dmp parallel=16 encryption_pwd_prompt=yes filesize=1G logfile=export.log
Hinweise zu Data Pump-Parametern:-
Bei ECPUs muss
parallel
auf das 0,25-fache der ECPU-Anzahl gesetzt werden. Im obigen Beispiel mit 64 ECPUs istparallel
also auf 0,25 x 64 gesetzt, d.h. auf 16 mitexpdp
. -
Bei OCPUs muss
parallel
auf denselben Wert wie die OCPU-Anzahl gesetzt werden. Im obigen Beispiel mit 16 OCPUs wirdparallel
auf 16 gesetzt, mitexpdp
. -
Wenn Sie während des Exports mit
expdp
den Parameterencryption_pwd_prompt=yes
verwenden, müssen Sieencryption_pwd_prompt=yes
mit dem Import verwenden und dasselbe Kennwort beimimpdp
-Prompt eingeben, um die Dumpdateien zu entschlüsseln (merken Sie sich das Kennwort, das Sie beim Export angeben). Die maximale Länge des Verschlüsselungskennworts beträgt 128 Byte. -
Der Parameter
dumpfile
unterstützt die Platzhalter%L
und%l
zusätzlich zu den Legacy-Platzhaltern%U
und%u
. 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, inkrementierende Ganzzahl mit variabler Breite, die bei 100 beginnt und bei 2147483646 endet.
Um die beste Exportperformance zu erzielen, verwenden Sie den Datenbankservice
HIGH
für die Exportverbindung, und setzen Sie den ParameterPARALLEL
auf die Anzahl der CPUs in Ihrer Datenbank. Informationen dazu, welcher Datenbankservicename für die Ausführung des Data Pump-Exports verbunden werden soll, finden Sie unter Vordefinierte Datenbankservicenamen für autonome Datenbanken.Nach Abschluss des Exports können Sie die generierten Dumpdateien anzeigen, indem Sie eine Abfrage wie die Folgende ausführen:SELECT * FROM DBMS_CLOUD.LIST_FILES('DATA_EXPORT_DIR');
Die Ausgabe dieser Beispielabfrage zeigt die generierten Dumpdateien und die Exportlogdatei an:OBJECT_NAME BYTES CHECKSUM CREATED LAST_MODIFIED ---------------------- ---------- ----–---- –------------------------–----- -------------------- exp01.dmp 12288 12-NOV-19 06.10.47.0 PM GMT 12-NOV-19... exp02.dmp 8192 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... exp03.dmp 1171456 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... exp04.dmp 348160 12-NOV-19 06.10.48.0 PM GMT 12-NOV-19... export.log 1663 12-NOV-19 06.10.50.0 PM GMT 12-NOV-19...
-
Hinweise:
-
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
. -
Die API, mit der Sie die Dumpdateien in den Objektspeicher verschieben, unterstützt Dateigrößen bis zu 50 GB. Stellen Sie daher sicher, dass Sie keine höhere Größe als die im Argument filesize angegebene angeben.
-
Weitere Informationen finden Sie unter Oracle Data Pump Export in Oracle Database 19c-Utilitys oder Oracle Database 23ai-Utilitys.
Dumpdateiset aus Autonomous Database in Cloud-Objektspeicher verschieben
-
Stellen Sie eine Verbindung zur autonomen Datenbank her.
-
Speichern Sie die Zugangsdaten für den Cloud-Objektspeicher mit der Prozedur
DBMS_CREDENTIAL.CREATE_CREDENTIAL
. Beispiel:BEGIN
DBMS_CREDENTIAL.CREATE_CREDENTIAL
( credential_name => 'DEF_CRED_NAME', username => 'adb_user@oracle.com', password => 'password' ); END; /Die Werte, die Sie fürusername
undpassword
angeben, hängen vom verwendeten Cloud-Objektspeicherservice ab:-
Oracle Cloud Infrastructure Object Storage:
username
ist Ihr Oracle Cloud Infrastructure-Benutzername, undpassword
ist Ihr Oracle Cloud Infrastructure-Auth-Token. Siehe Mit Authentifizierungstoken arbeiten. -
Oracle Cloud Infrastructure Object Storage Classic:
username
ist Ihr Oracle Cloud Infrastructure Classic-Name.password
ist Ihr Oracle Cloud Infrastructure Classic-Kennwort.Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden. Beachten Sie, dass dieser Schritt nur einmal erforderlich ist, es sei denn, Ihre Objektspeicherzugangsdaten werden geändert. Nachdem Sie die Zugangsdaten gespeichert haben, können Sie denselben Zugangsdatennamen für alle Dataloads verwenden.
-
-
Verschieben Sie die Dumpdateien aus Autonomous Database in den Cloud-Objektspeicher, indem Sie
DBMS_CLOUD.PUT_OBJECT
aufrufen.Beispiel:BEGIN
DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp01.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp01.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp02.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp02.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp03.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp03.dmp');DBMS_CLOUD.PUT_OBJECT
(credential_name => 'DEF_CRED_NAME', object_uri => 'https://swiftobjectstorage.us-phoenix-1.oraclecloud.com/v1/idthydc0kinr/mybucket/exp04.dmp', directory_name => 'DATA_EXPORT_DIR', file_name => 'exp04.dmp'); END; /Informationen zu
PUT_OBJECT
finden Sie unter PUT_OBJECT-Prozedur.
Daten direkt aus Autonomous Database in den Objektspeicher exportieren
Hier erfahren Sie, wie Sie mit Oracle Data Pump Daten direkt aus Autonomous Database in den Cloud-Objektspeicher exportieren.
Dumpdateien herunterladen, Data Pump Import ausführen und Objektspeicher bereinigen
Laden Sie bei Bedarf die Dumpdateien aus dem Cloud-Objektspeicher herunter, und importieren Sie das Dumpdateiset mit Oracle Data Pump Import in die Zieldatenbank. Führen Sie dann eine Bereinigung durch, wenn erforderlich.
Ausführliche Informationen finden Sie unter Im Befehlszeilenmodus für den Oracle Data Pump-Import verfügbare Parameter in Oracle Database-Utilitys 19c oder Oracle Database 23ai-Utilitys.