oracle goldengate: synchronisation zwischen oracle und mysql datenbanken, november 2012

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

Upload: ileana-somesan

Post on 11-Jun-2015

2.966 views

Category:

Technology


4 download

DESCRIPTION

Der Vortrag wurde auf der DOAG Konferenz im November 2012 gehalten. Mit Hilfe von Oracle GoldenGate lassen sich 1.) Oracle-Daten in eine MySQL Datenbank laden, 2.) eine Oracle und eine MySQL Datenbank dauerhaft auf dem gleichen Stand halten.

TRANSCRIPT

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

Ileana Someşan

Systemberaterin ORACLE Deutschland

Oracle GoldenGate - Die Brücke zwischen Oracle und MySQL Datenbanken

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 2 [email protected]

Agenda

Problemstellung

Überblick Oracle GoldenGate

Unidirektionale Replikation von Oracle nach MySQL

Schlussbemerkungen

Q&A

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 3 [email protected]

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

Oracle DB und MySQL

Beide stark verbreitet

Häufiger Einsatz beider Datenbanken im

selben Unternehmen

– für verschiedene Anwendungen

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 4 [email protected]

Ein Beispiel Laufende Aktualisierung notwendig

... preis ...

96.00

Online Shop

update produkt set preis=99 where id=…;

Zentraler Produktkatalog

häufige Preisänderungen MUSS: immer aktuelle Preise

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 5 [email protected]

Eigene Synchronisationslösung? Probleme

z.B. via Oracle DB Gateway for ODBC

Anwendungsanpassung

PL/SQL Know-how

Performance

Verteilte Transaktionen Export-/Import-Jobs

Unterschiede zwischen den 2 Datenbanken:

Datentypen, SQL-Dialekte, Tabellendefinitionen, Zeichensätze,...

z.B. via SQL Skripte + Utilities (mysqlimport)

keine live Synchronisation

abhängig von Wartungsfenstern

große Datenmengen

Zu beachten

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 6 [email protected]

Agenda

Problemstellung

Überblick Oracle GoldenGate

Unidirektionale Replikation von Oracle nach MySQL

Schlussbemerkungen

Q&A

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 7 [email protected]

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

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 8 [email protected]

Dabei...

– Daten auswählen

– Daten konvertieren

unterschiedliche Tabellenstrukturen

– Daten bearbeiten

2 Einsatzmöglichkeiten

Initial Load

– eine leere DB mit Daten befüllen

– einmaliger Vorgang

Migration

Synchronisation

– Haupteinsatzgebiet

– zwei Datenbanken dauerhaft auf dem

gleichen Stand halten

– Daten, ggf. Datenstrukturen

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 9 [email protected]

Modulare Architektur

Extract Replicat Data Pump

Quell-DB Ziel-DB

Lokale

Trail Files

Remote

Trail Files

Quellsystem Zielsystem

erfasst Datenänderungen

Zwischenspeicher,

plattformunabhängig

sendet Daten über TCP/IP

verschlüsselt & komprimiert aktualisiert Zieldatenbank

über native SQL-Aufrufe

Kontrollprozess

Manager Manager

Netzwerk

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 10 [email protected]

Agenda

Problemstellung

Überblick Oracle GoldenGate

Unidirektionale Replikation von Oracle nach MySQL

Schlussbemerkungen

Q&A

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 11 [email protected]

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

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 12 [email protected]

2 Installationen

– auf Oracle DB Server (meistens)

alternativ auf Standby Server

– auf MySQL Server

Installation

Download edelivery.oracle.com

– Oracle Fusion Middleware

Keine weiteren SW-Komponenten

Oracle Quellsystem MySQL Zielsystem

Oracle GoldenGate

for MySQL

Oracle GoldenGate

for Oracle

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 13 [email protected]

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

Vorbereitung der Oracle Datenbank

Extract

Redo Log

Files

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 14 [email protected]

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

Replicat Remote

Trail Files

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 15 [email protected]

2 Schritte zur Replikation

1

Erstbefüllung der MySQL Datenbank

mit Oracle Daten Oracle GoldenGate

oder andere Werkzeuge

2

Synchronisation starten Oracle GoldenGate

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 16 [email protected]

Oracle-Daten in MySQL laden

Extract und Replicat Prozesse konfigurieren und starten

Netzwerk

Tabellen der Oracle DB

Extract Replicat

Manager Manager

1

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 17 [email protected]

Oracle und MySQL synchronisieren

Trail Files registrieren

Extract, Data Pump und Replicat Prozesse konfigurieren und starten

Sehr einfach z.B. über Kommandozeile von Oracle GoldenGate GGSCI

Extract Replicat Data Pump Lokale

Trail Files

Remote

Trail Files

Redo Log

Files

Manager Manager

2

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 18 [email protected]

3. Replicat Prozess konfigurieren

4. Replicat Prozess erzeugen

add replicat mys_rini,specialrun

Beispiel: Oracle-Daten in MySQL laden

1. Extract Prozess konfigurieren

2. Extract Prozess erzeugen

add extract ora_eini,sourceistable

5. Extract starten

start extract ora_eini

extract ora_eini

userid oggsrc, password welcome1

rmthost target, mgrport 8000

rmttask replicat, group mys_rini

table mywarehouse.catalog;

replicat mys_rini

targetdb myshop@target:3306,

userid oggtgt, password welcome1

sourcedefs ./dirdef/ora2mysql.def

map mywarehouse.catalog, target

myshop.produkt;

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 19 [email protected]

Agenda

Problemstellung

Überblick Oracle GoldenGate

Unidirektionale Replikation von Oracle nach MySQL

Schlussbemerkungen

Q&A

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 20 [email protected]

Ggf. befristete Lizenzen

Oracle Lizenzmetriken

– Prozessor

– Named User Plus

Lizenzierung

Getrennt von DB-Lizenzen

2 Produkte

– OGG

– OGG for Non Oracle Database

Oracle Quellsystem MySQL Zielsystem

Oracle GoldenGate

for Non Oracle Databases

Oracle GoldenGate

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 21 [email protected]

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

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 22 [email protected]

Datenverteilung

Datenkonsolidierung

Flexible Konfigurationen

Unidirektionale Replikation

Bidirektionale Replikation (aktiv-aktiv)

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 23 [email protected]

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

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

Q&A

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 25 [email protected]

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

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 26 [email protected]