def
Hinweis: Stellen Sie sicher, dass Sie die Umgebungsvariablen wie im Abschnitt Oracle GoldenGate-Programme beschrieben festlegen, damit Sie das Utility DEFGEN verwenden können.
Mit dem Utility DEFGEN können Sie Metadatendefinitionen für Quelltabellen generieren, die von einem Replicat zum Lesen aus einer Traildatei verwendet werden können, die in einem Formatrelease enthalten ist, das älter als Oracle GoldenGate 12.2 ist und keine Metadaten der Quelltabelle enthält. Das Programm DEFGEN wird im Home-Verzeichnis bin von Oracle GoldenGate installiert.
Syntax für Windows, UNIX und Linux
defgen PARAMFILE <parameter_file>
[NOEXTATTR]
[PAUSEATEND | NOPAUSEATEND]
[REPORTFILE <report_file>]
[UPDATECS <characterset> ]
PARAMFILE <parameter_file>
Erforderlich. Gibt den relativen oder absoluten Pfadnamen der Parameterdatei für das ausgeführte Programm DEFGEN an. Die Parameterdatei muss manuell erstellt werden und listet eine defs-Datei für die Ausgabe der Tabellendefinition, Datenbankverbindungsinformationen und die Tabellen auf, die Definitionen generieren sollen.
NOEXTATTR
Kann verwendet werden, um die Abwärtskompatibilität mit Oracle GoldenGate-Versionen zu unterstützen, die älter als Release 11.2.1 sind und keine anderen Zeichensätze als ASCII unterstützen, sowie die Groß-/Kleinschreibung oder Objektnamen, die mit Leerzeichen in Anführungszeichen gesetzt werden. NOEXTATTR verhindert, dass DEFGEN das Datenbankgebietsschema und den Zeichensatz einbezieht, die Globalisierungsfeatures unterstützen, die in Oracle GoldenGate Release 11.2.1 eingeführt wurden. Wenn der Tabellen- oder Spaltenname Multibyte- oder Sonderzeichen wie Leerzeichen enthält, schließt DEFGEN die Tabellendefinition nicht ein, wenn NOEXTATTR angegeben wird. Wenn der Modus APPEND in der Parameterdatei verwendet wird, wird NOEXTATTR ignoriert, und die neue Tabellendefinition wird im vorhandenen Dateiformat angehängt, unabhängig davon, ob die zusätzlichen Attribute vorhanden sind oder nicht.
PAUSEATEND |
NOPAUSEATEND (Standard) |
(Nur Windows) Wenn der Prozess gestoppt wird, muss ein Oracle GoldenGate-Benutzer die Konsolenausgabe anzeigen und dann einen beliebigen Schlüssel zum Löschen aufrufen. Gibt auch an, ob der Prozess normal oder anormal beendet wurde.
REPORTFILE <report_file>
Sendet die Befehlsausgabe an die angegebene Berichtsdatei. Ohne die Option reportfile wird die Befehlsausgabe auf dem Bildschirm ausgegeben.
defs_file UPDATECS <charset>
Konvertiert den Zeichensatz einer Definitionsdatei in einen anderen Zeichensatz, wenn die Datei an ein Betriebssystem mit einem inkompatiblen Zeichensatz übertragen wird. Bei dieser Prozedur werden der Name der Definitionsdatei und der Zielzeichensatz als Eingabe verwendet. Beispiel: defgen source.def UPDATECS UTF-8.
UPDATECS hilft in Situationen, z.B. wenn ein japanischer Tabellenname unter japanischen Fenstern in Windows CP932 in die Datendefinitionsdatei geschrieben wird und dann die Definitionsdatei an japanischen UNIX übertragen wird. Die Datei kann nur verwendet werden, wenn UNIX im PCK-Gebietsschema konfiguriert ist. Daher müssen Sie UPDATECS verwenden, um die Codierung der Definitionsdatei in das richtige Format zu konvertieren.
Beispiel
Im Folgenden finden Sie ein Beispiel für die Parameterdatei DEFGEN, defgenparam.prm. Weitere Informationen finden Sie im Parameter DEFSFILE.
DEFSFILE /home/oracle/ogg/ora/bin/ora.defs, PURGE
USERIDALIAS oracle_source
TABLE hr.employees;
Führen Sie das DEFGEN-Programm mit dem folgenden Befehl aus:
$OGG_HOME/bin/defgen PARAMFILE defgenparam.prm