SHUTDOWN IMMEDIATE; STARTUP;
conn SYNC/SYNC@orcl as sysdba; EXECUTE dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');
EXECUTE dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora');
SELECT sql_redo, sql_undo, seg_owner FROM v$logmnr_contents WHERE seg_name='EMP' AND seg_owner='SYNC';



Detailliertes Beispiel für die Migration der Oracle-Datensynchronisierung über LogMiner
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.
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
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
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;
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.
alter database add supplemental log data;
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 kopierenDer 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.
SHUTDOWN IMMEDIATE; STARTUP;
create user SYNC identified by SYNC; #如果存在用户,则不需要再次创建,直接授权即可GRANT CONNECT,RESOURCE,DBA,EXECUTE_CATALOG_ROLE TO SYNC;
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 kopierenBei Verwendung der Java-Code-Analyse lautet die verwendete SQL-Anweisung wie folgt.
conn SYNC/SYNC@orcl as sysdba; EXECUTE dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR');
BEGIN dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR'); END;
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);
Die Protokolldatei mit dem Status „AKTUELL“ ist die aktuell verwendete Protokolldatei
9. Verwenden Sie Lominer, um die Protokolldatei zu analysierenBEGIN 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;
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#;
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.
EXECUTE dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/tools/oracle11g/oradata/orcl/LOGMNR/dictionary.ora');
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;
(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 kopierenEmpfohlenes Tutorial: „
Oracle Video TutorialSELECT sql_redo, sql_undo, seg_owner FROM v$logmnr_contents WHERE seg_name='EMP' AND seg_owner='SYNC';
“
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!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Um die Oracle -Tablespace -Größe abzufragen, führen Sie die folgenden Schritte aus: Bestimmen Sie den Namen Tablespace, indem Sie die Abfrage ausführen: Wählen Sie Tablespace_Name aus dba_tablespaces. Abfragen Sie die Tablespace -Größe durch Ausführen der Abfrage: Summe (Bytes) als Total_Size, sum (bytes_free) als verfügbare_space, sum

Mit der Verschlüsselung von Oracle View können Sie Daten in der Ansicht verschlüsseln und so die Sicherheit sensibler Informationen verbessern. Die Schritte umfassen: 1) Erstellen des Master -Verschlüsselungsschlüssels (MEK); 2) Erstellen einer verschlüsselten Ansicht, der Ansicht und der Verschlüsselung der Ansicht und der MEK angeben; 3) Benutzern Sie die Benutzer, auf die verschlüsselte Ansicht zuzugreifen. Wie verschlüsselte Ansichten funktionieren: Wenn ein Benutzer nach einer verschlüsselten Ansicht nachgefragt wird, verwendet Oracle MEK, um Daten zu entschlüsseln und sicherzustellen, dass nur autorisierte Benutzer auf lesbare Daten zugreifen können.

Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

Deinstallieren Sie die Methode für Oracle -Installationsfehler: Schließen Sie den Oracle -Service, löschen Sie Oracle -Programmdateien und Registrierungsschlüssel, Deinstallieren Sie Oracle -Umgebungsvariablen und starten Sie den Computer neu. Wenn das Deinstall fehlschlägt, können Sie das Oracle Universal Deinstall -Tool manuell deinstallieren.

Die Methode zur Lösung des Oracle Cursor Closeure -Problems umfasst: explizit den Cursor mithilfe der Close -Anweisung schließen. Deklarieren Sie den Cursor in der für Aktualisierungsklausel so, dass er nach Beendigung des Umfangs automatisch schließt. Deklarieren Sie den Cursor in der Verwendung der Verwendung so, dass er automatisch schließt, wenn die zugehörige PL/SQL -Variable geschlossen ist. Verwenden Sie die Ausnahmebehandlung, um sicherzustellen, dass der Cursor in jeder Ausnahmesituation geschlossen ist. Verwenden Sie den Verbindungspool, um den Cursor automatisch zu schließen. Deaktivieren Sie die Automatikübermittlung und Verzögerung des Cursors Schließen.

Oracle Ungültige numerische Fehler können durch Fehlpaarung des Datentyps, numerische Überlauf, Datenkonvertierungsfehler oder Datenbeschäftigung verursacht werden. Zu den Schritten zur Fehlerbehebung gehören das Überprüfen von Datentypen, das Erkennen digitaler Überläufe, das Überprüfen von Datenkonvertierungen, das Überprüfen der Datenbeschädigung und das Erforschen anderer möglicher Lösungen wie das Konfigurieren des Parameters nls_numeric_characters und das Aktivieren der Datenüberprüfungs -Protokollierung.

SQL -Anweisungen können basierend auf der Laufzeiteingabe erstellt und ausgeführt werden, indem die dynamische SQL von Oracle verwendet wird. Zu den Schritten gehören: Vorbereitung einer leeren Zeichenfolgenvariable zum Speichern von dynamisch generierten SQL -Anweisungen. Verwenden Sie die sofortige Ausführung oder Vorbereitung, um dynamische SQL -Anweisungen zu kompilieren und auszuführen. Verwenden Sie die Bind -Variable, um die Benutzereingabe oder andere dynamische Werte an dynamische SQL zu übergeben. Verwenden Sie sofortige Ausführung oder führen Sie aus, um dynamische SQL -Anweisungen auszuführen.

In Oracle kann die For -Loop -Schleife Cursors dynamisch erzeugen. Die Schritte sind: 1. Definieren Sie den Cursortyp; 2. Erstellen Sie die Schleife; 3.. Erstellen Sie den Cursor dynamisch; 4. Führen Sie den Cursor aus; 5. Schließen Sie den Cursor. Beispiel: Ein Cursor kann mit dem Zyklus für Kreislauf erstellt werden, um die Namen und Gehälter der Top 10 Mitarbeiter anzuzeigen.
