Oracle GoldenGate -
Die Brücke zwischen Oracle
und MySQL Datenbanken
Ileana Someşan
Systemberaterin ORACLE Deutschland
Agenda


                  Problemstellung
                  Überblick Oracle GoldenGate
                  Unidirektionale Replikation von Oracle nach MySQL
                  Schlussbemerkungen


                  Q&A



2   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
Oracle DB und MySQL

 Beide stark verbreitet
 Häufiger Einsatz beider Datenbanken im
    selben Unternehmen
        – für verschiedene Anwendungen

                                                                            Anforderung
                                                                            Oracle DB-Daten sollen auch für MySQL-
                                                                            Clients verfügbar sein
                                                                            Herausforderung
                                                                            Jede Aktualisierung der Oracle DB-Daten
                                                                            soll in MySQL sofort sichtbar sein




3   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                               ileana.somesan@oracle.com
Ein Beispiel
        Laufende Aktualisierung notwendig

         update produkt
                set preis=99
                where id=…;




                                                                                        ...     preis        ...
                                                                                                96.00

                          Zentraler Produktkatalog                         Online Shop
                          häufige Preisänderungen                          MUSS: immer aktuelle Preise


4   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                      ileana.somesan@oracle.com
Eigene Synchronisationslösung?
        Probleme

          Export-/Import-Jobs                                                 Verteilte Transaktionen                Zu beachten

 z.B. via SQL Skripte + Utilities                                          z.B. via Oracle DB Gateway for    Unterschiede zwischen den
    (mysqlimport)                                                            ODBC                              2 Datenbanken:

                                                                                                               Datentypen,
 keine live Synchronisation                                                Anwendungsanpassung               SQL-Dialekte,
                                                                                                               Tabellendefinitionen,
 abhängig von Wartungsfenstern                                             PL/SQL Know-how
                                                                                                               Zeichensätze,...


 große Datenmengen                                                         Performance




5   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                                 ileana.somesan@oracle.com
Agenda


                  Problemstellung
                  Überblick Oracle GoldenGate
                  Unidirektionale Replikation von Oracle nach MySQL
                  Schlussbemerkungen


                  Q&A



6   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
Oracle GoldenGate

 Aquise im Jahr 2009
 Eigenständiges Produkt
 Oracles strategische Replikationslösung


 Stärke: Heterogenität
        – Replikation zwischen allen gängigen
               Datenbankmanagementsystemen                                       Enscribe
                                                                                 Non Stop SQL/MX


                                                                                                                          LUW  z/OS  IBM i


                                                                           Unterstützte Datenbank-/Plattformkombinationen:
                                                                           http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html




7   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                                                ileana.somesan@oracle.com
2 Einsatzmöglichkeiten

 Initial Load                                                              Dabei...
        – eine leere DB mit Daten befüllen                                    – Daten auswählen
        – einmaliger Vorgang                                                  – Daten konvertieren
         Migration                                                              unterschiedliche Tabellenstrukturen
                                                                              – Daten bearbeiten
 Synchronisation
        – Haupteinsatzgebiet
        – zwei Datenbanken dauerhaft auf dem
               gleichen Stand halten
        – Daten, ggf. Datenstrukturen




8   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                    ileana.somesan@oracle.com
Modulare Architektur
                                                                                      Quellsystem        Zielsystem


                                                                                                  Netzwerk
           Quell-DB                                                                                                                 Ziel-DB


                                                        Extract                Lokale Data Pump            Remote Replicat
                                                                              Trail Files                 Trail Files
                      Manager                                                                                                  Manager



erfasst Datenänderungen                                                                   sendet Daten über TCP/IP                Kontrollprozess
                                     Zwischenspeicher,                                    verschlüsselt & komprimiert   aktualisiert Zieldatenbank
                                   plattformunabhängig                                                                  über native SQL-Aufrufe

   9   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                                     ileana.somesan@oracle.com
Agenda


                   Problemstellung
                   Überblick Oracle GoldenGate
                   Unidirektionale Replikation von Oracle nach MySQL
                   Schlussbemerkungen


                   Q&A



10   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
Prüfen Sie zu Beginn...

            Unterstützte Versionen von Oracle und MySQL
             Oracle GoldenGate Zertifizierungsmatrix


            Unterstützte Datentypen
                     – fast alle Oracle- und MySQL-Datentypen

            Unterstützte Änderungen
                     – DML: Insert, Update, Delete
                     – keine DDL-Replikation nach MySQL

            Oracle GoldenGate Oracle Installation & Setup Guide
            Oracle GoldenGate MySQL Installation & Setup Guide



11   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
Installation

 Download edelivery.oracle.com                                              2 Installationen
         – Oracle Fusion Middleware                                             – auf Oracle DB Server (meistens)
                                                                                  alternativ auf Standby Server
 Keine weiteren SW-Komponenten
                                                                                – auf MySQL Server




             Oracle GoldenGate                                                                   Oracle GoldenGate
             for Oracle                                                                          for MySQL



                                     Oracle Quellsystem                                    MySQL Zielsystem


12   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                     ileana.somesan@oracle.com
Vorbereitung der Oracle Datenbank

                                                                             Archivelogging aktivieren
                                                                             Supplemental Logging aktivieren
                                                                             Für Eindeutigkeit der Zeilen sorgen
                                                                             Generische Definition der Oracle Daten
                                                                             erstellen & auf das Zielsystem übertragen
                                                                               – Oracle GoldenGate DEFGEN Utility
 Redo Log
   Files

                                                      Extract




13   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                 ileana.somesan@oracle.com
Vorbereitung der MySQL Datenbank

 InnoDB für MySQL-Zieltabellen
         – empfohlene Storage Engine
         – standard Storage Engine seit MySQL 5.5

 Für Eindeutigkeit der Zeilen sorgen
 Trigger & kaskadierende Constraints
     deaktivieren
 Checkpoint-Tabelle für GoldenGate
     anlegen
                                                                             Remote       Replicat
                                                                            Trail Files




14   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                            ileana.somesan@oracle.com
2 Schritte zur Replikation




                                                      1                           2


         Erstbefüllung der MySQL Datenbank                                  Synchronisation starten
         mit Oracle Daten                                                    Oracle GoldenGate
          Oracle GoldenGate
          oder andere Werkzeuge




15   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                             ileana.somesan@oracle.com
Oracle-Daten in MySQL laden                                                                                                   1


                                                        Extract                                        Replicat




                                                                            Manager          Manager

                                                                                  Netzwerk
Tabellen der Oracle DB



            Extract und Replicat Prozesse konfigurieren und starten




16   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                         ileana.somesan@oracle.com
Oracle und MySQL synchronisieren                                                                                                     2


            Trail Files registrieren
            Extract, Data Pump und Replicat Prozesse konfigurieren und starten
            Sehr einfach z.B. über Kommandozeile von Oracle GoldenGate GGSCI




                                                                                      Manager    Manager


 Redo Log
   Files

                                                      Extract                Lokale Data Pump    Remote       Replicat
                                                                            Trail Files         Trail Files


17   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                                ileana.somesan@oracle.com
Beispiel: Oracle-Daten in MySQL laden

1. Extract Prozess konfigurieren                                            3. Replicat Prozess konfigurieren
extract ora_eini                                                            replicat mys_rini
userid oggsrc, password welcome1                                            targetdb myshop@target:3306,
rmthost target, mgrport 8000                                                userid oggtgt, password welcome1
rmttask replicat, group mys_rini                                            sourcedefs ./dirdef/ora2mysql.def
table mywarehouse.catalog;                                                  map mywarehouse.catalog, target
                                                                                myshop.produkt;


2. Extract Prozess erzeugen        4. Replicat Prozess erzeugen
add extract ora_eini,sourceistable add replicat mys_rini,specialrun
5. Extract starten
start extract ora_eini

18   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                 ileana.somesan@oracle.com
Agenda


                   Problemstellung
                   Überblick Oracle GoldenGate
                   Unidirektionale Replikation von Oracle nach MySQL
                   Schlussbemerkungen


                   Q&A



19   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
Lizenzierung

 Getrennt von DB-Lizenzen                                                   Ggf. befristete Lizenzen
 2 Produkte                                                                 Oracle Lizenzmetriken
         – OGG                                                                 – Prozessor
         – OGG for Non Oracle Database                                         – Named User Plus




             Oracle GoldenGate                                                                Oracle GoldenGate
                                                                                              for Non Oracle Databases



                                     Oracle Quellsystem                                    MySQL Zielsystem


20   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                                  ileana.somesan@oracle.com
Alleinstellungsmerkmale

            Replikation auf Transaktionsebene
                     – Nur erfolgreich abgeschlossene Transaktionen werden repliziert

            Fehlertoleranz gegen Netzwerkausfälle und Fehler
                     – Extraktion und Replikation sind voneinander entkoppelt
                     – Checkpoints für korrekten Wiederanlauf nach Ausfällen

            Leistungsfähigkeit
                     – Extraktion und Replikation laufen asynchron
                     – Parallele Prozesse für höheren Durchsatz

            Modulare Architektur
                     – Einsatz in verschiedenen Topologien




21   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.               ileana.somesan@oracle.com
Flexible Konfigurationen

 Unidirektionale Replikation                                                Datenverteilung




 Bidirektionale Replikation (aktiv-aktiv)                                   Datenkonsolidierung




22   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.                           ileana.somesan@oracle.com
Weitere Infos

            Oracle GoldenGate auf Oracle Technology Network
                www.oracle.com/technetwork/middleware/goldengate/overview/index.html


            Download
                edelivery.oracle.com, unter Product Pack Oracle Fusion Middleware


            Oracle GoldenGate 11.2.1 Dokumentation
                     – Oracle Installation and Setup Guide
                     – MySQL Installation and Setup Guide



            Tutorial GoldenGate for Oracle to MySQL



23   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.           ileana.somesan@oracle.com
Q&A
25   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com
26   Copyright © 2012, Oracle and/or its affiliates. All rights reserved.   ileana.somesan@oracle.com

Oracle GoldenGate: Synchronisation zwischen Oracle und MySQL Datenbanken, November 2012

  • 1.
    Oracle GoldenGate - DieBrücke zwischen Oracle und MySQL Datenbanken Ileana Someşan Systemberaterin ORACLE Deutschland
  • 2.
    Agenda  Problemstellung  Überblick Oracle GoldenGate  Unidirektionale Replikation von Oracle nach MySQL  Schlussbemerkungen  Q&A 2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 3.
    Oracle DB undMySQL  Beide stark verbreitet  Häufiger Einsatz beider Datenbanken im selben Unternehmen – für verschiedene Anwendungen  Anforderung Oracle DB-Daten sollen auch für MySQL- Clients verfügbar sein  Herausforderung Jede Aktualisierung der Oracle DB-Daten soll in MySQL sofort sichtbar sein 3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 4.
    Ein Beispiel Laufende Aktualisierung notwendig update produkt set preis=99 where id=…; ... preis ... 96.00 Zentraler Produktkatalog Online Shop häufige Preisänderungen MUSS: immer aktuelle Preise 4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 5.
    Eigene Synchronisationslösung? Probleme Export-/Import-Jobs Verteilte Transaktionen Zu beachten  z.B. via SQL Skripte + Utilities  z.B. via Oracle DB Gateway for  Unterschiede zwischen den (mysqlimport) ODBC 2 Datenbanken: Datentypen,  keine live Synchronisation  Anwendungsanpassung SQL-Dialekte, Tabellendefinitionen,  abhängig von Wartungsfenstern  PL/SQL Know-how Zeichensätze,...  große Datenmengen  Performance 5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 6.
    Agenda  Problemstellung  Überblick Oracle GoldenGate  Unidirektionale Replikation von Oracle nach MySQL  Schlussbemerkungen  Q&A 6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 7.
    Oracle GoldenGate  Aquiseim Jahr 2009  Eigenständiges Produkt  Oracles strategische Replikationslösung  Stärke: Heterogenität – Replikation zwischen allen gängigen Datenbankmanagementsystemen Enscribe Non Stop SQL/MX LUW  z/OS  IBM i Unterstützte Datenbank-/Plattformkombinationen: http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html 7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 8.
    2 Einsatzmöglichkeiten  InitialLoad  Dabei... – eine leere DB mit Daten befüllen – Daten auswählen – einmaliger Vorgang – Daten konvertieren  Migration unterschiedliche Tabellenstrukturen – Daten bearbeiten  Synchronisation – Haupteinsatzgebiet – zwei Datenbanken dauerhaft auf dem gleichen Stand halten – Daten, ggf. Datenstrukturen 8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 9.
    Modulare Architektur Quellsystem Zielsystem Netzwerk Quell-DB Ziel-DB Extract Lokale Data Pump Remote Replicat Trail Files Trail Files Manager Manager erfasst Datenänderungen sendet Daten über TCP/IP Kontrollprozess Zwischenspeicher, verschlüsselt & komprimiert aktualisiert Zieldatenbank plattformunabhängig über native SQL-Aufrufe 9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 10.
    Agenda  Problemstellung  Überblick Oracle GoldenGate  Unidirektionale Replikation von Oracle nach MySQL  Schlussbemerkungen  Q&A 10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 11.
    Prüfen Sie zuBeginn...  Unterstützte Versionen von Oracle und MySQL  Oracle GoldenGate Zertifizierungsmatrix  Unterstützte Datentypen – fast alle Oracle- und MySQL-Datentypen  Unterstützte Änderungen – DML: Insert, Update, Delete – keine DDL-Replikation nach MySQL  Oracle GoldenGate Oracle Installation & Setup Guide  Oracle GoldenGate MySQL Installation & Setup Guide 11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 12.
    Installation  Download edelivery.oracle.com  2 Installationen – Oracle Fusion Middleware – auf Oracle DB Server (meistens) alternativ auf Standby Server  Keine weiteren SW-Komponenten – auf MySQL Server Oracle GoldenGate Oracle GoldenGate for Oracle for MySQL Oracle Quellsystem MySQL Zielsystem 12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 13.
    Vorbereitung der OracleDatenbank  Archivelogging aktivieren  Supplemental Logging aktivieren  Für Eindeutigkeit der Zeilen sorgen  Generische Definition der Oracle Daten erstellen & auf das Zielsystem übertragen – Oracle GoldenGate DEFGEN Utility Redo Log Files Extract 13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 14.
    Vorbereitung der MySQLDatenbank  InnoDB für MySQL-Zieltabellen – empfohlene Storage Engine – standard Storage Engine seit MySQL 5.5  Für Eindeutigkeit der Zeilen sorgen  Trigger & kaskadierende Constraints deaktivieren  Checkpoint-Tabelle für GoldenGate anlegen Remote Replicat Trail Files 14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 15.
    2 Schritte zurReplikation 1 2 Erstbefüllung der MySQL Datenbank Synchronisation starten mit Oracle Daten  Oracle GoldenGate  Oracle GoldenGate oder andere Werkzeuge 15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 16.
    Oracle-Daten in MySQLladen 1 Extract Replicat Manager Manager Netzwerk Tabellen der Oracle DB  Extract und Replicat Prozesse konfigurieren und starten 16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 17.
    Oracle und MySQLsynchronisieren 2  Trail Files registrieren  Extract, Data Pump und Replicat Prozesse konfigurieren und starten  Sehr einfach z.B. über Kommandozeile von Oracle GoldenGate GGSCI Manager Manager Redo Log Files Extract Lokale Data Pump Remote Replicat Trail Files Trail Files 17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 18.
    Beispiel: Oracle-Daten inMySQL laden 1. Extract Prozess konfigurieren 3. Replicat Prozess konfigurieren extract ora_eini replicat mys_rini userid oggsrc, password welcome1 targetdb myshop@target:3306, rmthost target, mgrport 8000 userid oggtgt, password welcome1 rmttask replicat, group mys_rini sourcedefs ./dirdef/ora2mysql.def table mywarehouse.catalog; map mywarehouse.catalog, target myshop.produkt; 2. Extract Prozess erzeugen 4. Replicat Prozess erzeugen add extract ora_eini,sourceistable add replicat mys_rini,specialrun 5. Extract starten start extract ora_eini 18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 19.
    Agenda  Problemstellung  Überblick Oracle GoldenGate  Unidirektionale Replikation von Oracle nach MySQL  Schlussbemerkungen  Q&A 19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 20.
    Lizenzierung  Getrennt vonDB-Lizenzen  Ggf. befristete Lizenzen  2 Produkte  Oracle Lizenzmetriken – OGG – Prozessor – OGG for Non Oracle Database – Named User Plus Oracle GoldenGate Oracle GoldenGate for Non Oracle Databases Oracle Quellsystem MySQL Zielsystem 20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 21.
    Alleinstellungsmerkmale  Replikation auf Transaktionsebene – Nur erfolgreich abgeschlossene Transaktionen werden repliziert  Fehlertoleranz gegen Netzwerkausfälle und Fehler – Extraktion und Replikation sind voneinander entkoppelt – Checkpoints für korrekten Wiederanlauf nach Ausfällen  Leistungsfähigkeit – Extraktion und Replikation laufen asynchron – Parallele Prozesse für höheren Durchsatz  Modulare Architektur – Einsatz in verschiedenen Topologien 21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 22.
    Flexible Konfigurationen  UnidirektionaleReplikation  Datenverteilung  Bidirektionale Replikation (aktiv-aktiv)  Datenkonsolidierung 22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 23.
    Weitere Infos  Oracle GoldenGate auf Oracle Technology Network www.oracle.com/technetwork/middleware/goldengate/overview/index.html  Download edelivery.oracle.com, unter Product Pack Oracle Fusion Middleware  Oracle GoldenGate 11.2.1 Dokumentation – Oracle Installation and Setup Guide – MySQL Installation and Setup Guide  Tutorial GoldenGate for Oracle to MySQL 23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 24.
  • 25.
    25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 26.
    26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com