Heim > Datenbank > Oracle > Hauptteil

Detailliertes Beispiel für die Migration der Oracle-Datensynchronisierung über LogMiner

WBOY
Freigeben: 2022-03-30 11:16:55
nach vorne
2060 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über Oracle, das hauptsächlich die Probleme im Zusammenhang mit der Oracle-Datensynchronisierung über LogMiner vorstellt. Ich hoffe, dass es für alle hilfreich ist.

Detailliertes Beispiel für die Migration der Oracle-Datensynchronisierung über LogMiner

Empfohlenes Tutorial: „Oracle-Tutorial

Vorne geschrieben

Vor kurzem habe ich untersucht, wie man eine Datensynchronisation zwischen Oracle-Datenbanken erreicht, und es gibt tatsächlich relativ wenig Informationen im Internet. Das beste Oracle-Datenbanksynchronisierungstool ist: GoldenGate, und GoldenGate ist kostenpflichtig. Gibt es also eine gute Möglichkeit, Oracle-Daten zu synchronisieren? Richtig, LogMiner wird verwendet, um eine synchrone Migration von Oracle-Daten zu erreichen.

Implementierungsprozess

1. Verzeichnis erstellen

Erstellen Sie das Verzeichnis /home/oracle/tools/oracle11g/oradata/orcl/LOGMNR, um die Wörterbuchinformationen der Datenbank zu speichern, wie unten gezeigt.

mkdir -p /home/oracle/tools/oracle11g/oradata/orcl/LOGMNR
Nach dem Login kopieren

2. Konfigurieren Sie LogMiner

Melden Sie sich als Oracle-Benutzer beim Server und als DBA bei der Oracle-Datenbank an, wie unten gezeigt.

sqlplus /nolog
conn  / as sysdba
Nach dem Login kopieren

Als nächstes erstellen Sie die Konfiguration des Wörterbuchordners wie unten gezeigt.

CREATE DIRECTORY utlfile AS '/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR';alter system set utl_file_dir='/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR' scope=spfile;
Nach dem Login kopieren

Hinweis: Da utl_file_dir nur in Dateien existiert, wird der Bereich im Dateimodus „spfile“ geschrieben, nicht in beiden. 3. Aktivieren Sie den Protokoll-Anhangsmodus . Erstellen Sie einen Datensynchronisierungsbenutzer

Erstellen Sie einen Datensynchronisierungsbenutzer. Wenn bereits einer vorhanden ist, können Sie ihn überspringen und Berechtigungen direkt erteilen.
alter database add supplemental log data;
Nach dem Login kopieren

6. Erstellen Sie ein Datenwörterbuch.

Wechseln Sie zu dem Benutzer, der Daten synchronisieren möchte, melden Sie sich als DBA an und erstellen Sie eine Datenwörterbuchdatei wie unten gezeigt.
SHUTDOWN IMMEDIATE;  STARTUP;
Nach dem Login kopieren
Der Befehl zum Erstellen eines Datenwörterbuchs kann auch über Java-Code implementiert werden. Wenn er über Java-Code implementiert wird, können Sie zunächst über JDBC eine Verbindung zur Oracle-Datenbank herstellen und dann den folgenden Befehl ausführen.

create user SYNC identified by SYNC;  #如果存在用户,则不需要再次创建,直接授权即可GRANT CONNECT,RESOURCE,DBA,EXECUTE_CATALOG_ROLE TO SYNC;
Nach dem Login kopieren

7. Fügen Sie die zu analysierenden Protokolldateien hinzu

Dieser Schritt kann in der Oracle-Befehlszeile ausgeführt oder mit Java-Code implementiert werden.

Verwenden Sie die SQL-Anweisung, um das unten gezeigte Ergebnis zu erzielen.
conn SYNC/SYNC@orcl as sysdba;  EXECUTE dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');
Nach dem Login kopieren
Bei Verwendung der Java-Code-Analyse lautet die verwendete SQL-Anweisung wie folgt.

BEGIN
dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');  END;
Nach dem Login kopieren

8. Sehen Sie sich die verwendete Protokolldatei an

EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO01.LOG',options=>dbms_logmnr.NEW);  EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO02.LOG',options=>dbms_logmnr.ADDFILE);  EXECUTE dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO03.LOG',options=>dbms_logmnr.ADDFILE);
Nach dem Login kopieren

Die Protokolldatei mit dem Status „AKTUELL“ ist die aktuell verwendete Protokolldatei

9. Verwenden Sie Lominer, um die Protokolldatei zu analysieren

BEGIN  
dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO01.LOG',options=>dbms_logmnr.NEW);  dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO02.LOG',options=>dbms_logmnr.ADDFILE);  dbms_logmnr.add_logfile(logfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/REDO03.LOG',options=>dbms_logmnr.ADDFILE);  END;
Nach dem Login kopieren

SQL-Anweisungen, die bei der Verwendung von Java-Code verwendet werden Analyse Wie unten gezeigt.

SELECT group#, sequence#, status, first_change#, first_time FROM V$log ORDER BY first_change#;
Nach dem Login kopieren

10. Sehen Sie sich die Analyseergebnisse an

EXECUTE dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora');
Nach dem Login kopieren

Hinweis: Die Analyseergebnisse in der Ansicht v$logmnr_contents existieren nur während der Lebensdauer der Sitzung, wenn wir den Prozess „dbms_logmrn.start_logmnr“ ausführen Wenn Sie neue Protokolle erstellen möchten, müssen Sie die Analyseprotokolldatei erneut hinzufügen und LogMiner zur Analyse verwenden.

11. Häufig gestellte Fragen

(1) Wenn die Ausnahme „Bezeichner ‚SYS.DBMS_LOGMNR‘ muss deklariert werden“ auftritt, müssen Sie dem Benutzer nach dem Erstellen des Benutzers die Berechtigung EXECUTE_CATALOG_ROLE erteilen, wie unten gezeigt.

BEGIN
dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora'); END;
Nach dem Login kopieren

(2) Zu diesem Zeitpunkt müssen Sie den entsprechenden Benutzer für seg_owner in der Abfrageanweisung angeben. Wenn ich beispielsweise den SYNC-Benutzer für die Analyse über LogMiner verwende, müssen Sie seg_owner wie gezeigt als SYNC-Benutzer angeben unten.
SELECT sql_redo, sql_undo, seg_owner FROM v$logmnr_contents WHERE seg_name='EMP' AND seg_owner='SYNC';
Nach dem Login kopieren
Empfohlenes Tutorial: „

Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Migration der Oracle-Datensynchronisierung über LogMiner. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage