Daten mit DBMS_CLOUD_IMPORT migrieren
Mit DBMS_CLOUD_IMPORT können Sie Daten aus Oracle- und Nicht-Oracle-Datenbanken mit einem einfachen, konsistenten Ansatz in Oracle Autonomous AI Database importieren.
- Daten mit DBMS_CLOUD_IMPORT migrieren
Bei der Arbeit über mehrere Datenbanksysteme hinweg kann die Datenverschiebung aufgrund von Unterschieden in Technologien, Formaten und Tools komplex sein.DBMS_CLOUD_IMPORTvereinfacht diesen Prozess, indem ein einheitlicher Ansatz für den plattformübergreifenden Datenimport bereitgestellt wird, sodass nicht mehrere Tools oder Workflows verwaltet werden müssen. - Voraussetzungen
Listet die Voraussetzungen für den Import in die autonome KI-Datenbank auf. - Daten mit DBMS_CLOUD_IMPORT importieren
Beschreibt, wie Sie Daten mitDBMS_CLOUD_IMPORTin die autonome KI-Datenbank importieren. - Heterogenen Import überwachen und diagnostizieren
Um Probleme zu diagnostizieren und den Fortschritt von Datenimportvorgängen zu überwachen, können Sie die folgenden Data Dictionary Views abfragen. Diese Views enthalten detaillierte Informationen zu Aufgabenstatus, Ausführungsfortschritt, parallelen Vorgängen und zugehörigen Objekten.
Übergeordnetes Thema: In autonome KI-Datenbank migrieren
Daten mit DBMS_CLOUD_IMPORT migrieren
Bei der Arbeit über mehrere Datenbanksysteme hinweg kann die Datenverschiebung aufgrund von Unterschieden in Technologien, Formaten und Tools komplex sein. DBMS_CLOUD_IMPORT vereinfacht diesen Prozess, indem ein einheitlicher Ansatz für den plattformübergreifenden Datenimport bereitgestellt wird, sodass nicht mehrere Tools oder Workflows verwaltet werden müssen.
DBMS_CLOUD_IMPORT unterstützt auch eine leistungsstarke und zuverlässige Datenübertragung. Der Importprozess verwendet die parallele Ausführung, um den Durchsatz zu verbessern. Wenn ein Import unterbrochen wird, z.B. während der Wartung oder bei einem Verbindungsverlust zur Quelldatenbank, wird er automatisch von dort fortgesetzt, wo er unterbrochen wurde. So wird der Abschluss sichergestellt, ohne dass der Import erneut gestartet werden muss.
Sie können Daten aus allen Oracle-Datenbanken importieren, die in OCI oder anderen Cloud-Providern wie Amazon RDS for Oracle ausgeführt werden, sowie aus allen nicht von Oracle unterstützten Datenbanken, die von Oracle Managed Heterogeneous Connectivity unterstützt werden. Bei Oracle-Quellen werden sowohl Daten als auch Datenbankobjekte importiert. Bei Nicht-Oracle-Quellen konzentriert sich der Import auf die Datenverschiebung mit automatischer Datentypkonvertierung in Oracle-kompatible Formate.
Diese Funktion unterstützt den flexiblen Datenimport. Je nach Ihren Anforderungen können Sie eine gesamte Datenbank oder eine Teilmenge von Daten, wie ausgewählte Schemas oder Tabellen, importieren. Oracle stellt außerdem Data Dictionary Views bereit, um den Fortschritt zu überwachen und den Importstatus zu verfolgen.
Wichtige Vorteile
- Einheitlicher Datenimport plattformübergreifend: Importieren Sie Daten aus Oracle- und Nicht-Oracle-Datenbanken, ohne mehrere Tools zu verwenden.
- Leistungsstarke Datenübertragung: Verschieben Sie große Datenmengen mit paralleler Ausführung.
- Integrierte Resilienz: Setzen Sie Importvorgänge automatisch nach Unterbrechungen fort, einschließlich Wartung oder Verbindungsausfall mit der Quelldatenbank.
- Flexible Datenauswahl: Importieren Sie eine vollständige Datenbank oder eine Teilmenge von Daten, einschließlich bestimmter Schemas oder Tabellen.
In den folgenden Themen finden Sie weitere Informationen:
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT migrieren
Voraussetzungen
Listet die Voraussetzungen für den Import in die autonome KI-Datenbank auf.
Stellen Sie vor dem Start des Imports sicher, dass die folgenden Voraussetzungen erfüllt sind.
-
Sie müssen als Benutzer
ADMINangemeldet sein. -
DBMS_CLOUD_IMPORT-Unterprogramme greifen mit einem Datenbanklink, der implizit als Teil der Importaufgabe erstellt wurde, auf die Quelldatenbank zu. Um diese Verbindung herzustellen, müssen Sie ein Zugangsdatenobjekt mit den Zugangsdaten der Remotedatenbank erstellen und beim Erstellen der Importaufgabe referenzieren. Weitere Informationen finden Sie unter Prozedur CREATE_CREDENTIAL. -
Geben Sie für Nicht-Oracle-Quelldatenbanken
longtovarchar => 'true'im Parametergateway_paramsan, wenn SieDBMS_CLOUD_IMPORT.CREATE_IMPORT_TASKaufrufen. Dies ist erforderlich, da Metadaten in Nicht-Oracle-Datenbanken ausLONG-Spalten bestehen. Beispiel:gateway_params => JSON_OBJECT('db_type' VALUE <db_type>, 'longtovarchar' VALUE 'true'). -
Stellen Sie sicher, dass die von
service_nameangegebene Datenbank eine Verbindung zum Zielschema herstellen und darauf zugreifen kann. -
Importjobs werden ab dem Zeitpunkt der Unterbrechung fortgesetzt, z.B. nach einem geplanten Wartungsereignis oder einem unerwarteten Ausfall.
In diesem Fall wird die parallele Verarbeitung nicht unterstützt, und wenn der Job unterbrochen wird, wird er vom Anfang der Tabelle neu gestartet, anstatt ab dem Zeitpunkt der Unterbrechung wiederaufzunehmen.
Je nach Quelldatenbanktyp können zusätzliche Voraussetzungen erforderlich sein, um die parallele Verarbeitung und zuverlässige Neustartfähigkeit zu unterstützen.
- Die Quelltabelle ist Range-partitioniert.
- Für mindestens eine numerische Spalte sind Histogrammstatistiken vorhanden.
- Ein numerischer Index oder Primärschlüssel ist vorhanden.
Wenn diese Voraussetzungen nicht erfüllt sind, wird die Tabelle ohne parallele Verarbeitung kopiert, und wenn der Job unterbrochen wird, wird er vom Tabellenanfang neu gestartet, anstatt ab dem Zeitpunkt der Unterbrechung wiederaufzunehmen.
Im Folgenden werden datenbankspezifische Voraussetzungen aufgeführt:
- PostgreSQL-Quelldatenbank
- Erstellen Sie die erforderlichen Views in der PostgreSQL-Quelldatenbank. Um die parallele Verarbeitung und eine zuverlässige Wiederherstellbarkeit bei der Migration von PostgreSQL zu unterstützen, erstellen Sie die erforderlichen Views in der Quelldatenbank. Wenn die Ansichten nicht vorhanden sind, verwendet der Import keine parallele Kopie, und wenn das Laden einer Tabelle unterbrochen wird, wird sie von Anfang an neu gestartet.
- Sie können diese Ansichten mit von Oracle bereitgestellten Skripten erstellen, die auf GitHub verfügbar sind. Prüfen und führen Sie die Skripte in der PostgreSQL-Quelldatenbank aus, bevor Sie den Import starten.
Weitere Informationen finden Sie in der PostgreSQL 18.3-Dokumentation.
- MySQL-Quelldatenbank
-
schema_listwird für MySQL-Quellen nicht unterstützt, weil MySQL keine Schemas verwendet. Wenn SieREATE_IMPORT_TASKaufrufen, geben Sie ein leeres Array fürschema_list([]) an. -
Der Wert, den Sie für
service_nameangeben, wird als Schemaname verwendet. -
Erstellen Sie die erforderlichen Ansichten in der MySQL-Quelldatenbank. Um die parallele Verarbeitung und zuverlässige Neustartfähigkeit bei der Migration von MySQL zu unterstützen, erstellen Sie die erforderlichen Ansichten in der Quelldatenbank. Wenn die Ansichten nicht vorhanden sind, verwendet der Import keine parallele Kopie, und wenn das Laden einer Tabelle unterbrochen wird, wird sie von Anfang an neu gestartet.
-
Sie können diese Ansichten mit von Oracle bereitgestellten Skripten erstellen, die in Github verfügbar sind. Prüfen Sie die Skripte in der MySQL-Quelldatenbank, und führen Sie sie aus, bevor Sie den Import starten.
-
Weitere Informationen finden Sie in der MySQL-Referenz.
- Amazon Redshift-Quelldatenbank
-
Berechtigungen für den Datenbanklinkzugriff erteilen Um Daten aus Remote-Tabellen zu lesen, müssen Sie sicherstellen, dass der Account, mit dem Sie den Datenbanklink erstellen, über die erforderlichen Berechtigungen verfügt. Beispiel:
-
GRANT USAGE ON SCHEMA <remote_schema> TO <dblink_user>; -
GRANT SELECT ON <remote_schema>.<remote_table> TO <dblink_user>;
-
-
Stellen Sie die Sichtbarkeit von Metadaten für Nicht-
public-Schemas sicher. Wenn das Remoteschema nichtpublicist und der Import Metadaten abfragen muss (z.B. überpg_table_def), müssen Sie das Schema in diesearch_pathdes Datenbanklinkbenutzers aufnehmen. Beispiel:-
ALTER USER <dblink_user> SET search_path TO <new_value>;
-
-
Weitere Informationen finden Sie in der Dokumentation zu Amazon Redshift.
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT migrieren
Daten mit DBMS_CLOUD_IMPORT importieren
Beschreibt, wie Sie Daten mit DBMS_CLOUD_IMPORT in die autonome KI-Datenbank importieren.
Um Daten in eine autonome KI-Datenbank zu importieren, verwenden Sie die Prozedur DBMS_CLOUD_IMPORT.CREATE_IMPORT_TASK. Mit dieser Prozedur können Sie Daten aus Oracle und unterstützten Nicht-Oracle-Datenbanken importieren, indem Sie die erforderlichen Verbindungsdetails und optional die zu importierenden Objekte angeben.
Sie können eine gesamte Datenbank oder eine Teilmenge von Daten, wie bestimmte Schemas oder Tabellen, importieren, indem Sie Parameter wie schema_list oder table_list angeben. Wenn Sie diese Prozedur ausführen, erstellt Oracle Database einen Oracle Scheduler-Job zur Verwaltung der Importaufgabe. Der Job verwendet die angegebenen Verbindungsdetails und Zugangsdaten, um einen Datenbanklink zur Quelldatenbank zu erstellen und Daten in die autonome KI-Datenbank zu übertragen.
Das Verhalten des Imports hängt vom Typ der Quelldatenbank ab:
- Oracle-zu-Oracle-Importe: Daten und Datenbankobjekte werden migriert. Indizes, Constraints und Partitionen werden automatisch in der autonomen KI-Zieldatenbank erstellt. Wenn der Import unterbrochen wird (z. B. aufgrund von Wartungsarbeiten), wird er ab dem Zeitpunkt der Unterbrechung fortgesetzt.
- Import aus Nicht-Oracle-Datenbanken: Es werden nur Daten migriert. Schlüssel, Indizes, Constraints und andere abhängige Objekte werden nicht erstellt. Partitionen werden nur erstellt, wenn die Quelltabelle Range-partitioniert ist. Die Fortsetzungsfunktion hängt von den Voraussetzungen ab. Andernfalls wird der Import von Anfang an neu gestartet.
Sie müssen den Import als Benutzer ADMIN ausführen. Die autonome Zieldatenbank bleibt während des Imports verfügbar. Oracle empfiehlt jedoch, andere Aktivitäten in der Zieldatenbank zu vermeiden, bis der Import abgeschlossen ist. Wenn ein Importjob unterbrochen wird (z.B. aufgrund einer geplanten Wartung oder eines unerwarteten Ausfalls), kann er ab dem Zeitpunkt der Unterbrechung oder des Neustarts fortgesetzt werden, je nach Quelldateityp und ob die Voraussetzungen erfüllt sind. Sie können den Job auch vorübergehend unterbrechen und wiederaufnehmen und dann fortsetzen.
- Importaufgabe erstellen
Beschreibt die Schritte zum Erstellen einer Importaufgabe. - Import anhalten und wiederaufnehmen
Beschreibt, wie Sie einen Importvorgang unterbrechen und wiederaufnehmen. - Importfortschritt überwachen
Nach dem Start einer Importaufgabe wird der Scheduler-Job im Hintergrund ausgeführt, und die autonome KI-Datenbank zeichnet den Fortschritt sowohl auf Aufgaben- als auch auf Tabellenebene auf. - Importaufgabe löschen
Beschreibt die Schritte zum Löschen einer Importaufgabe.
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT migrieren
Importaufgabe erstellen
Beschreibt die Schritte zum Erstellen einer Importaufgabe.
Bevor Sie die Importaufgabe erstellen und starten, richten Sie die Authentifizierung für die Quelldatenbank ein. DBMS_CLOUD_IMPORT verwendet ein Zugangsdatenobjekt, um eine sichere Verbindung zur Quelle herzustellen (und den erforderlichen Datenbanklink für die Aufgabe zu erstellen).
Gehen Sie wie folgt vor, um eine Importaufgabe zu erstellen:
In den folgenden Themen finden Sie weitere Informationen:
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT importieren
Import anhalten und wiederaufnehmen
Beschreibt, wie Sie einen Importvorgang unterbrechen und wiederaufnehmen.
Bei Bedarf können Sie den Import mit der Prozedur SUSPEND_IMPORT_TASK vorübergehend unterbrechen:
BEGIN
DBMS_CLOUD_IMPORT.SUSPEND_IMPORT_TASK(
task_name => 'orcl_import_job'
);
END;
/Dadurch wird der Scheduler-Job gestoppt, während der gesamte Fortschritt und alle Metadaten beibehalten werden. Weitere Informationen finden Sie unter Prozedur SUSPEND_IMPORT_TASK.
Um den Import fortzusetzen, verwenden Sie die Prozedur RESUME_IMPORT_TASK:
BEGIN
DBMS_CLOUD_IMPORT.RESUME_IMPORT_TASK(
task_name => 'orcl_import_job'
);
END;
/Der Job wird vom letzten Checkpoint fortgesetzt, abgeschlossene Tabellen übersprungen und die verbleibende Arbeit fortgesetzt.
Das Fortsetzungsverhalten hängt vom Quelldatenbanktyp und den Voraussetzungen ab. Wenn die Voraussetzungen für die parallele Verarbeitung und die automatische Fortsetzung erfüllt sind, wird der Import ab dem Zeitpunkt der Unterbrechung fortgesetzt. Andernfalls verwendet der Import keine parallele Kopie, und wenn der Job unterbrochen wird, wird er am Anfang der Tabelle neu gestartet.
Weitere Informationen finden Sie unter Prozedur RESUME_IMPORT_TASK.
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT importieren
Importfortschritt überwachen
Nachdem Sie eine Importaufgabe gestartet haben, wird der Scheduler-Job im Hintergrund ausgeführt, und die autonome KI-Datenbank zeichnet den Fortschritt sowohl auf Aufgaben- als auch auf Tabellenebene auf.
- DBA_DATA_IMPORT_TASK_STATUS: Zeigt den Fortschritt auf Aufgabenebene an, einschließlich Gesamtstatus, Fertigstellungsgrad und eine Aktivitätsübersicht (z.B. Tabellen, die derzeit in Bearbeitung sind).
- DBA_DATA_IMPORT_TABLE_STATUS: Zeigt den Fortschritt auf Tabellenebene für jede zu importierende Tabelle an, einschließlich Status- und Fehlerdetails für nicht erfolgreiche Tabellen.
Beispiel: Fragen Sie DBA_DATA_IMPORT_TABLE_STATUS ab, um Fortschritt und Fehler auf Tabellenebene anzuzeigen. Die Spalte STATUS gibt den aktuellen Status jeder Tabelle an, wie SUCCEEDED, FAILED, LOADING oder STOPPED.
BEGIN
DBMS_CLOUD.CREATE_CREDENTIAL(
credential_name => 'db1_cred',
username => '<username>',
password => '<password>'
);
END;
/Die Ausgabe sieht in etwa folgendermaßen aus:
IMPORT_TASK_NAME SCHEMA_NAME SCHEMA_OBJECT STATUS
------------------ ------------- --------------- ----------
IMPORT_JOB1 SALES ORDERS SUCCEEDED
IMPORT_JOB1 SALES CUSTOMERS SUCCEEDED
IMPORT_JOB1 HR EMPLOYEES LOADING
IMPORT_JOB1 HR DEPARTMENTS FAILEDNach Abschluss des Imports wird der Scheduler-Job automatisch deaktiviert. Weitere Informationen finden Sie unter Heterogenen Import überwachen und diagnostizieren.
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT importieren
Importaufgabe löschen
Beschreibt die Schritte zum Löschen einer Importaufgabe.
Nachdem der Import abgeschlossen ist und nicht mehr benötigt wird, können Sie die Importaufgabe entfernen. Wenn Sie die Aufgabe löschen, werden der Scheduler-Job, Datenbanklinks und die zugehörigen Metadaten entfernt. Objekte oder Daten, die bereits im Zielschema erstellt wurden, werden nicht zurückgesetzt, und eine in Bearbeitung befindliche Tabelle kann teilweise geladen werden.
Wenn Sie den Import für dasselbe Schema erneut ausführen, müssen Sie möglicherweise teilweise geladene Tabellen manuell bereinigen. Um unvollständige Tabellen zu identifizieren, fragen Sie Data Dictionary Views wie DBA_DATA_IMPORT_TABLE_STATUS ab, und prüfen Sie den Tabellenstatus, bevor Sie eine Bereinigung durchführen.
BEGIN
DBMS_CLOUD_IMPORT.DROP_IMPORT_TASK(
task_name => 'orcl_import_job'
);
END;
/In diesem Beispiel wird der Importjob ORCL_IMPORT_JOB gelöscht. Weitere Informationen finden Sie unter Prozedur DROP_IMPORT_TASK.
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT importieren
Heterogenen Import überwachen und diagnostizieren
Um Probleme zu diagnostizieren und den Fortschritt von Datenimportvorgängen zu überwachen, können Sie die folgenden Data Dictionary Views abfragen. Diese Views enthalten detaillierte Informationen zu Aufgabenstatus, Ausführungsfortschritt, parallelen Vorgängen und zugehörigen Objekten.
| Ansichtsname | Beschreibung |
|---|---|
| Ansicht - DBA_DATA_IMPORT_TASK_STATUS | Zeigt den Status jeder Tabelle innerhalb einer Importaufgabe an, einschließlich aller während der Verarbeitung aufgetretenen Fehler. |
| Ansicht - DBA_DATA_IMPORT_TABLE_STATUS | Enthält allgemeine Details auf Aufgabenebene, einschließlich Fortschrittsinformationen, wie die Anzahl der verarbeiteten, geladenen und erfolgreich abgeschlossenen Tabellen. |
Übergeordnetes Thema: Daten mit DBMS_CLOUD_IMPORT migrieren