Datenbankobjektnamen angeben
Objektnamen müssen in der Parameterdatei vollqualifiziert sein. Das bedeutet, dass jede Name-Spezifikation qualifiziert werden muss, nicht nur diejenigen, die als Eingabe für die Oracle GoldenGate-Parametersyntax bereitgestellt werden, sondern auch Namen in einer SQL-Prozedur oder Abfrage, die als SQLEXEC-Eingabe, Namen in der User Exit-Eingabe und alle anderen in der Parameterdatei angegebenen Eingaben angegeben werden.
Oracle GoldenGate unterstützt zweiteilige und dreiteilige Objektnamen, je nach Datenbank.
Zweiteilige Namen
Für die meisten Datenbanken müssen nur zweiteilige Namen im folgenden Format angegeben werden:
*owner.object*
Beispiel: HR.EMP
Wo:
Eigentümer ist ein Schema oder eine Datenbank, je nachdem, wie die Datenbank einen logischen Namespace definiert, der Datenbankobjekte enthält. Objekt ist eine Tabelle oder ein anderes unterstütztes Datenbankobjekt.
Die Datenbanken, für die Oracle GoldenGate zweiteilige Namen unterstützt, lauten wie folgt, dargestellt mit der entsprechenden zweiteiligen Benennungskonvention:
-
Db2 für i: schema.object und library/file(member)
-
Db2 LUW: schema.object
-
Db2 auf z/OS: schema.object
-
MySQL: database.object
-
Oracle AI Database (Nicht-CDB-Datenbanken): schema.object
-
SQL-Server: schema.object
-
Teradata: database.object
Dreiteilige Namen
Oracle GoldenGate unterstützt dreiteilige Namen für die Oracle-Containerdatenbank, nur bei Verwendung von Downstream Extract. Oracle GoldenGate unterstützt jedoch im Allgemeinen nur den PDB-Extrakt für Oracle AI Database.
Für die Erfassung aus einer Oracle-Quellcontainerdatenbank sind dreiteilige Namen erforderlich, da eine Extract-Gruppe aus mehreren Containern erfasst werden kann. Daher müssen der Name des Containers sowie das Schema für jedes Objekt oder jedes Objekt in einer Extract TABLE-Anweisung angegeben werden.
Geben Sie einen dreiteiligen Oracle-CDB-Namen wie folgt an:
*container.schema.object*
Beispiel: PDBEAST.HR.EMP
Daten aus mehreren Containern oder Katalogen anwenden
Um Daten, die aus mehreren Quellcontainern oder Katalogen erfasst wurden, auf eine Oracle-Zielcontainerdatenbank anzuwenden, sind sowohl dreiteilige als auch zweiteilige Namen erforderlich. Im MAP-Teil der MAP-Anweisung muss jedes Quellobjekt mit einem Container oder Katalog verknüpft sein, genau wie in der TABLE-Anweisung. Auf diese Weise können Sie (und Replicat) Daten aus mehreren Quellcontainern oder -katalogen den entsprechenden Zielobjekten ordnungsgemäß zuordnen. Im TARGET-Teil der MAP-Anweisung sind jedoch nur zweiteilige Namen erforderlich. Dies liegt daran, dass Replicat jeweils nur eine Verbindung zu einem Zielcontainer oder Katalog herstellen kann und schema.owner ein ausreichender Qualifier ist. Zur Unterstützung mehrerer Zielcontainer oder -kataloge sind mehrere Replicat-Gruppen erforderlich. Geben Sie den Zielcontainer oder -katalog mit dem Parameter TARGETDB an.
Standardcontainer oder -katalog angeben
Mit dem Parameter SOURCECATALOG können Sie einen Standardkatalog für alle nachfolgenden TABLE-, MAP- (oder Oracle SEQUENCE-)Spezifikationen in der Parameterdatei angeben.
Das folgende Beispiel zeigt die Verwendung von SOURCECATALOG zur Angabe der Oracle-Standard-PDB mit dem Namen pdbeast für die Objekte region und jobs und der Standard-PDB mit dem Namen pdbwest für die Objekte appraisal. Die Objekte in pdbeast werden mit einem vollqualifizierten dreiteiligen Namen angegeben, für den kein Standardkatalog angegeben werden muss.
TABLE pdbeast.hr.emp*;
SOURCECATALOG pdbeast
TABLE region.country*;
TABLE jobs.desg*;
SOURCECATALOG pdbwest
TABLE appraisal.sal*;