SlideShare ist ein Scribd-Unternehmen logo
Replikation
im heterogenen Umfeld
mit Oracle GoldenGate
Ileana Someşan, Systemberaterin

Frankfurt, 26.11.2013
2 Beispiele
 Synchronisation unterschiedlicher Datenbestände
– Von verschiedenen DB-Systemen (Oracle, SQL Server, ...)

 Anwendungs-Upgrade mit geringer Ausfallzeit
– Alte und neue Anwendungsversion haben leicht unterschiedliche Tabellenstrukturen

3

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Agenda



Heterogene Replikation



Umgang mit Heterogenität



4

Homogene Replikation

Beispiel: Unidirektionale Replikation von Oracle nach MySQL

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Homogene Replikation
 Quell- und Zieltabellen identisch
– gleicher DB-Typ, identische Tabellenstruktur

Quellsystem

=

Zielsystem

Oracle GoldenGate

5

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Einziger möglicher Unterschied
Tabellennamen/-eigentümer

DE.KATALOG

GLOBAL.CATALOG

Quelle

Ziel
Oracle GoldenGate

6

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Konfiguration von Oracle GoldenGate
Bei der homogenen Replikation
 Einfach: keine Konvertierung erforderlich
 Mapping zwischen Quell- und Zieltabellen
– Bei unterschiedlichen Tabellennamen/-eigentümern

 Parametereinstellungen:

-- excerpt replicat parameter file
ASSUMETARGETDEFS
MAP global.catalog, TARGET de.katalog;

7

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Agenda



Heterogene Replikation



Umgang mit Heterogenität



8

Homogene Replikation

Beispiel: Unidirektionale Replikation von Oracle nach MySQL

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Heterogene Replikation
 Quell- und Zieltabellen nicht identisch
– unterschiedliche DB-Systeme, unterschiedliche Tabellenstrukturen

Quellsystem

≠

Zielsystem

Oracle GoldenGate

9

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Unterschiedliche Datenbanksysteme
Datenbank

Quelle

Ziel

Datenbank

Quelle

Ziel

Oracle





NonStop SQL/MX





MySQL





Enscribe





SQL Server





Teradata





Sybase ASE





TimesTen

-



DB2 LUW





PostgreSQL

-



DB2 for i (OS400)





Netezza

-



DB2 for z/OS





Greenplum

-



Unterstützte Kombinationen aus DB/DB-Version für Oracle GoldenGate 11.2:
http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html

10

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Unterschiedliche Plattformen
Betriebssystem

Prozessorarchitektur

Red Hat Linux

x86

IBM zSeries

Oracle Linux

x86-64

IBM POWER

Windows

SPARC

Oracle Solaris

HP Itanium

IBM z/OS

HP NonStop (ehem. Tandem)

IBM zLinux

HP PA-RISC

IBM (OS400)
IBM AIX

HP-UX

11

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Unterstützte Kombinationen aus Datenbank-/OS-Version OGG 11.2
http://www.oracle.com/technetwork/middleware/ias/downloads/fusioncertification-100350.html

ileana.somesan@oracle.com
Unterschiedliche Anzahl von Spalten

PROD_ID

NAME

PROD_ID

Quelle

NAME

PREIS

Ziel
Oracle GoldenGate

12

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Unterschiedliche Reihenfolge der Spalten

PROD_ID

NAME

PREIS

PROD_ID

Quelle

PREIS

NAME

Ziel
Oracle GoldenGate

13

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Unterschiedliche Spaltennamen

prod_id

name

ARTIKEL_ID

Quelle

NAME

Ziel
Oracle GoldenGate

 Groß-/Kleinschreibung, Leerzeichen

14

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Unterschiedliche Datentypen
Und/oder Spaltenlänge

prod_id:
VARCHAR2(6)

lieferdatum:
DATE

prod_id:
VARCHAR2(8)

Quelle

lieferdatum:
TIMESTAMP

Ziel
Oracle GoldenGate

15

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Agenda



Heterogene Replikation



Umgang mit Heterogenität



16

Homogene Replikation

Beispiel: Unidirektionale Replikation von Oracle nach MySQL

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Oracle GoldenGate in Kenntnis setzen
 Konvertierung Quellformat  Zielformat erforderlich
– Mit Hilfe einer Datendefinitionsdatei

 Parametereinstellungen

-- excerpt replicat parameter file
SOURCEDEFS /ogg/dirdef/ora2mysql.def

17

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Definitionsdatei
 Beschreibt die replizierten Daten in einem generischen Format
– Zeichensatz, Datenbanktyp, Tabellenname, Anzahl der Spalten, Spaltendefinition,...

 Mit Oracle GoldenGate DEFGEN Utility generieren
– DEFGEN konfigurieren

-- defgen.prm file
DEFSFILE/ogg/dirdef/ora2mysql.def
USERID oggsrc, PASSWORD ***
TABLE warehouse.catalog;
– DEFGEN ausführen

$ defgen paramfile dirprm/defgen.prm

18

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Prinzip der Metadaten-Konvertierung
Auf dem Zielsystem

Zielsystem

Quellsystem

Datendefinitionen der
Zieltabellen
- werden direkt abgefragt

1

Datendefinitionen für die
Quelltabellen generieren
- mittels DEFGEN

2
Definitionsdatei auf das
Zielsystem kopieren

19

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

3
Replicat Prozess
konvertiert Daten
ileana.somesan@oracle.com
Mapping von Tabellen und Spalten
DE.KATALOG

GLOBAL.CATALOG
PROD_ID

NAME

PRICE

CURRENCY

ARTIKEL_ID

NAME

EUR

-- excerpt replicat parameter file
SOURCEDEFS /ogg/dirdef/ora2mysql.def
MAP global.catalog, TARGET de.katalog,
COLMAP (USEDEFAULTS, ARTIKEL_ID=PROD_ID, EUR=PRICE);

20

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Spaltentransformationen
GLOBAL.CUSTOMERS

EMEA.CUSTOMERS

CUST_NAME

NAME

PHONE_NO

COUNTRY_CODE

REG_PREFIX

PHONE_NO

-- excerpt replicat parameter file
SOURCEDEFS /ogg/dirdef/ora2mysql.def
MAP global.customers, TARGET emea.customers,
COLMAP ( NAME=CUST_NAME,
COUNTRY_CODE=@STREXT(PHONE_NO, 1, 3),
REG_PREFIX=@STREXT(PHONE_NO, 4, 6),
PHONE_NO=@STREXT(PHONE_NO, 7, 10));
21

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Spaltentransformationen
 > 30 vordefinierte Funktionen

 Eigene Funktionen

– Arithmetische Operationen
– Operationen auf Zeichenketten, Datum-

– Über Oracle GoldenGate User Exits

implementieren

und Zeitfelder
– Test auf Vorhandensein eines

Spaltenwertes
– Handling von NULL, fehlenden oder

ungültigen Werten

Oracle GoldenGate Reference Guide, Column Conversion Functions

22

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Agenda



Heterogene Replikation



Umgang mit Heterogenität



23

Homogene Replikation

Beispiel: Unidirektionale Replikation von Oracle nach MySQL

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Prüfen Sie zu Beginn...
 welche Versionen von Oracle und MySQL unterstützt sind

 Oracle GoldenGate Zertifizierungsmatrix
 welche Datentypen unterstützt sind
– fast alle Oracle- und MySQL-Datentypen

 welche Operationen unterstützt sind
– DML: Insert, Update, Delete
– keine DDL-Replikation nach MySQL

 Oracle GoldenGate Oracle Installation & Setup Guide

 Oracle GoldenGate MySQL Installation & Setup Guide

24

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Oracle GoldenGate Installation
 Download von edelivery.oracle.com oder

My Oracle Support
– Unter Oracle Fusion Middleware
– 2 Produkte: Oracle GoldenGate for Oracle,

 2 Installationen:
– auf Oracle DB Quellserver

(alternativ auf Standby Server)
– auf MySQL Zielserver

Oracle GoldenGate for MySQL
 Keine weiteren SW-Komponenten

Oracle GoldenGate
for Oracle

Oracle Quellsystem

25

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Oracle GoldenGate
for MySQL

MySQL Zielsystem

ileana.somesan@oracle.com
Vorbereitung der Oracle Datenbank
 DB-Benutzer für Oracle GoldenGate

erstellen, Berechtigungen zuweisen
 (Archivelogging einschalten)
 Supplemental Logging einschalten
 Für Eindeutigkeit der Zeilen sorgen
 Datendefinitionen der Quelltabellen

Redo Log
Files

generieren, auf Zielsystem übertragen
– Oracle GoldenGate DEFGEN Utility

Extract

26

Copyright © 2013, 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
 DB-Benutzer für Oracle GoldenGate

erstellen, Berechtigungen zuweisen
 Checkpoint-Tabelle anlegen

27

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Remote
Trail Files

Replicat

ileana.somesan@oracle.com
2 Schritte zur Replikation

1

2

Leere MySQL Datenbank mit
Oracle Daten befüllen
 Oracle GoldenGate
oder andere Werkzeuge

28

Dauerhafte
Synchronisation starten
 Oracle GoldenGate

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Konfiguration von Oracle GoldenGate

2

Für die Synchronisation Oracle - MySQL
 Trail Files registrieren
 Extract, Data Pump und Replicat Prozesse konfigurieren und starten

Manager

Manager

Redo Log
Files
ora_ext

29

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

/dirdat/lt

ora_pmp

/dirdat/rt

mys_rep

ileana.somesan@oracle.com
Komplette Anleitung auf isblog.de

30

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Demo
Ziel: MySQL

Quelle: Oracle DB

FILIALE.ARTIKEL

WAREHOUSE.CATALOG
PROD_ID

NAME

PRICE

CURRENCY

ARTIKEL_ID

NAME

EUR

111111

Canon EOS 700D

569.50

EUR

111111

Canon EOS 700D

569.50

222222

Panasonic Lumix
DMC-G6

579.10

EUR

222222

Panasonic Lumix
DMC-G6

579.10

333333

Sony Alpha 58

404.81

EUR

333333

Sony Alpha 58

404.81

@insert.sql
@update.sql

Oracle GoldenGate:
Konvertierung der Daten + Synchronisation

@delete.sql

31

Copyright © 2013, 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
My Oracle Support für Patches und Updates
 Oracle GoldenGate 11.2.1 Dokumentation
– Oracle Installation and Setup Guide
– MySQL Installation and Setup Guide

 Anleitung Unidirektionale Replikation zwischen Oracle und MySQL
32

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
Q&A
ileana.somesan@oracle.com
34

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com
35

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

ileana.somesan@oracle.com

Weitere ähnliche Inhalte

Was ist angesagt?

Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Ileana Somesan
 
Oracle Database In-Memory Option auf einen Blick
Oracle Database In-Memory Option auf einen BlickOracle Database In-Memory Option auf einen Blick
Oracle Database In-Memory Option auf einen Blick
Ileana Somesan
 
Oracle Database Appliance X5-2
Oracle Database Appliance X5-2Oracle Database Appliance X5-2
Oracle Database Appliance X5-2
Ileana Somesan
 
Oracle Database Appliance X4-2
Oracle Database Appliance X4-2Oracle Database Appliance X4-2
Oracle Database Appliance X4-2
Ileana Somesan
 
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichOracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichDierk Lenz
 
Datentransfer mit Oracle Tools
Datentransfer mit Oracle ToolsDatentransfer mit Oracle Tools
Datentransfer mit Oracle Tools
Christian Gohmann
 
Überblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12cÜberblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12c
Ileana Somesan
 
Hybrid Partitioned Tables in Oracle Database 19c
Hybrid Partitioned Tables in Oracle Database 19cHybrid Partitioned Tables in Oracle Database 19c
Hybrid Partitioned Tables in Oracle Database 19c
Ulrike Schwinn
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Ulrike Schwinn
 
Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2
Ulrike Schwinn
 
Codd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
Codd & ACID - ein Ausflug in die Datenbank-Theorie und GeschichteCodd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
Codd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
Markus Flechtner
 
Oracle Engineered Systems - Chance oder Risiko?
Oracle Engineered Systems - Chance oder Risiko?Oracle Engineered Systems - Chance oder Risiko?
Oracle Engineered Systems - Chance oder Risiko?
Trivadis
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
Karin Patenge
 
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
OPITZ CONSULTING Deutschland
 
Oracle Data Guard: Mit oder ohne Broker?
Oracle Data Guard: Mit oder ohne Broker?Oracle Data Guard: Mit oder ohne Broker?
Oracle Data Guard: Mit oder ohne Broker?
Dierk Lenz
 
PureSQL APEX Connect
PureSQL APEX ConnectPureSQL APEX Connect
PureSQL APEX Connect
Trivadis
 
AOUG 2019 Oracle Centrally Managed Users 18c / 19c
AOUG 2019 Oracle Centrally Managed Users 18c / 19cAOUG 2019 Oracle Centrally Managed Users 18c / 19c
AOUG 2019 Oracle Centrally Managed Users 18c / 19c
Stefan Oehrli
 
Oracle und Docker
Oracle und DockerOracle und Docker
Oracle und Docker
Stefan Oehrli
 
Sesam (APEX) Öffne Dich
Sesam (APEX) Öffne DichSesam (APEX) Öffne Dich
Sesam (APEX) Öffne Dich
Oliver Lemm
 
Automatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloudAutomatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloud
Trivadis
 

Was ist angesagt? (20)

Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
Oracle Database Appliance, DOAG Regio Berlin Brandenburg, Juni 2012
 
Oracle Database In-Memory Option auf einen Blick
Oracle Database In-Memory Option auf einen BlickOracle Database In-Memory Option auf einen Blick
Oracle Database In-Memory Option auf einen Blick
 
Oracle Database Appliance X5-2
Oracle Database Appliance X5-2Oracle Database Appliance X5-2
Oracle Database Appliance X5-2
 
Oracle Database Appliance X4-2
Oracle Database Appliance X4-2Oracle Database Appliance X4-2
Oracle Database Appliance X4-2
 
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im VergleichOracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
Oracle und Hochverfügbarkeit – Verschiedene Ansätze im Vergleich
 
Datentransfer mit Oracle Tools
Datentransfer mit Oracle ToolsDatentransfer mit Oracle Tools
Datentransfer mit Oracle Tools
 
Überblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12cÜberblick Oracle Datenbank 12c
Überblick Oracle Datenbank 12c
 
Hybrid Partitioned Tables in Oracle Database 19c
Hybrid Partitioned Tables in Oracle Database 19cHybrid Partitioned Tables in Oracle Database 19c
Hybrid Partitioned Tables in Oracle Database 19c
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
 
Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2Überblick zu Oracle Database 12c Release 2
Überblick zu Oracle Database 12c Release 2
 
Codd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
Codd & ACID - ein Ausflug in die Datenbank-Theorie und GeschichteCodd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
Codd & ACID - ein Ausflug in die Datenbank-Theorie und Geschichte
 
Oracle Engineered Systems - Chance oder Risiko?
Oracle Engineered Systems - Chance oder Risiko?Oracle Engineered Systems - Chance oder Risiko?
Oracle Engineered Systems - Chance oder Risiko?
 
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge20160310_ModernApplicationDevelopment_NoSQL_KPatenge
20160310_ModernApplicationDevelopment_NoSQL_KPatenge
 
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
Datenbank Migration - Oracle 11gR2 Erfahrungen 2011 - OPITZ CONSULTING - Chri...
 
Oracle Data Guard: Mit oder ohne Broker?
Oracle Data Guard: Mit oder ohne Broker?Oracle Data Guard: Mit oder ohne Broker?
Oracle Data Guard: Mit oder ohne Broker?
 
PureSQL APEX Connect
PureSQL APEX ConnectPureSQL APEX Connect
PureSQL APEX Connect
 
AOUG 2019 Oracle Centrally Managed Users 18c / 19c
AOUG 2019 Oracle Centrally Managed Users 18c / 19cAOUG 2019 Oracle Centrally Managed Users 18c / 19c
AOUG 2019 Oracle Centrally Managed Users 18c / 19c
 
Oracle und Docker
Oracle und DockerOracle und Docker
Oracle und Docker
 
Sesam (APEX) Öffne Dich
Sesam (APEX) Öffne DichSesam (APEX) Öffne Dich
Sesam (APEX) Öffne Dich
 
Automatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloudAutomatisiertes disaster recovery testing mit der oracle cloud
Automatisiertes disaster recovery testing mit der oracle cloud
 

Ähnlich wie Replikation im heterogenen Umfeld mit Oracle GoldenGate

Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2
oraclebudb
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New Features
Ulrike Schwinn
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle Datenbank
Ulrike Schwinn
 
Sensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle DatenbankSensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle Datenbank
Ulrike Schwinn
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & Betrieb
Niels de Bruijn
 
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
OPITZ CONSULTING Deutschland
 
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DBDocker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
Peter Ramm
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - Hochverfügbarkeit
Stefan Witwicki
 
DOAG Webinar Oracle und Docker
DOAG Webinar Oracle und DockerDOAG Webinar Oracle und Docker
DOAG Webinar Oracle und Docker
Stefan Oehrli
 
Einführung in nosql // ArangoDB mit Symfony 2
Einführung in nosql // ArangoDB mit Symfony 2Einführung in nosql // ArangoDB mit Symfony 2
Einführung in nosql // ArangoDB mit Symfony 2
ArangoDB Database
 
Cloud Lösungen für Apex
Cloud Lösungen für ApexCloud Lösungen für Apex
Cloud Lösungen für Apex
Stefan Witwicki
 
Aras PLM Tools
Aras PLM ToolsAras PLM Tools
Aras PLM ToolsAras
 
6 - Sprachen des Semantic Web - RDF(S) Frameworks
6 - Sprachen des Semantic Web - RDF(S) Frameworks6 - Sprachen des Semantic Web - RDF(S) Frameworks
6 - Sprachen des Semantic Web - RDF(S) Frameworks
Steffen Schloenvoigt
 
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
Karin Patenge
 
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
Karin Patenge
 
Roadshow Oracle Database 12c: News & Features
Roadshow Oracle Database 12c: News & FeaturesRoadshow Oracle Database 12c: News & Features
Roadshow Oracle Database 12c: News & Features
Digicomp Academy AG
 
Datenbanken - Eine Übersicht (WPMeetUP München)
Datenbanken - Eine Übersicht (WPMeetUP München)Datenbanken - Eine Übersicht (WPMeetUP München)
Datenbanken - Eine Übersicht (WPMeetUP München)
Dietmar Leher
 
Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)
Ulrike Schwinn
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge
Karin Patenge
 
20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge
Karin Patenge
 

Ähnlich wie Replikation im heterogenen Umfeld mit Oracle GoldenGate (20)

Oracle Database 12c Release 2
Oracle Database 12c Release 2 Oracle Database 12c Release 2
Oracle Database 12c Release 2
 
Oracle Text 12c New Features
Oracle Text 12c New FeaturesOracle Text 12c New Features
Oracle Text 12c New Features
 
Heterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle DatenbankHeterogene Daten(-strukturen) in der Oracle Datenbank
Heterogene Daten(-strukturen) in der Oracle Datenbank
 
Sensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle DatenbankSensitive Daten in der Oracle Datenbank
Sensitive Daten in der Oracle Datenbank
 
APEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & BetriebAPEX 5.1 - Architektur, Installation & Betrieb
APEX 5.1 - Architektur, Installation & Betrieb
 
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
Schlaglichter Oracle DB 11gR2 - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - ...
 
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DBDocker-Images mit vorinstallierter Instanz einer Oracle-DB
Docker-Images mit vorinstallierter Instanz einer Oracle-DB
 
Apex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - HochverfügbarkeitApex on the Rocks - Hochverfügbarkeit
Apex on the Rocks - Hochverfügbarkeit
 
DOAG Webinar Oracle und Docker
DOAG Webinar Oracle und DockerDOAG Webinar Oracle und Docker
DOAG Webinar Oracle und Docker
 
Einführung in nosql // ArangoDB mit Symfony 2
Einführung in nosql // ArangoDB mit Symfony 2Einführung in nosql // ArangoDB mit Symfony 2
Einführung in nosql // ArangoDB mit Symfony 2
 
Cloud Lösungen für Apex
Cloud Lösungen für ApexCloud Lösungen für Apex
Cloud Lösungen für Apex
 
Aras PLM Tools
Aras PLM ToolsAras PLM Tools
Aras PLM Tools
 
6 - Sprachen des Semantic Web - RDF(S) Frameworks
6 - Sprachen des Semantic Web - RDF(S) Frameworks6 - Sprachen des Semantic Web - RDF(S) Frameworks
6 - Sprachen des Semantic Web - RDF(S) Frameworks
 
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
20171121_DOAGKonferenz_JSON_OracleNoSQL_KPatenge
 
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
20190604_DOAGDatabase2019_OracleNoSQLDB_for_DBAs
 
Roadshow Oracle Database 12c: News & Features
Roadshow Oracle Database 12c: News & FeaturesRoadshow Oracle Database 12c: News & Features
Roadshow Oracle Database 12c: News & Features
 
Datenbanken - Eine Übersicht (WPMeetUP München)
Datenbanken - Eine Übersicht (WPMeetUP München)Datenbanken - Eine Übersicht (WPMeetUP München)
Datenbanken - Eine Übersicht (WPMeetUP München)
 
Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)Ausgewählte PL/SQL Packages (2)
Ausgewählte PL/SQL Packages (2)
 
20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge20181210_ITTage2018_OracleNoSQLDB_KPatenge
20181210_ITTage2018_OracleNoSQLDB_KPatenge
 
20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge20181120_DOAG_OracleNoSQLDB_KPatenge
20181120_DOAG_OracleNoSQLDB_KPatenge
 

Replikation im heterogenen Umfeld mit Oracle GoldenGate

  • 1. Replikation im heterogenen Umfeld mit Oracle GoldenGate Ileana Someşan, Systemberaterin Frankfurt, 26.11.2013
  • 2. 2 Beispiele  Synchronisation unterschiedlicher Datenbestände – Von verschiedenen DB-Systemen (Oracle, SQL Server, ...)  Anwendungs-Upgrade mit geringer Ausfallzeit – Alte und neue Anwendungsversion haben leicht unterschiedliche Tabellenstrukturen 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 3. Agenda   Heterogene Replikation  Umgang mit Heterogenität  4 Homogene Replikation Beispiel: Unidirektionale Replikation von Oracle nach MySQL Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 4. Homogene Replikation  Quell- und Zieltabellen identisch – gleicher DB-Typ, identische Tabellenstruktur Quellsystem = Zielsystem Oracle GoldenGate 5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 5. Einziger möglicher Unterschied Tabellennamen/-eigentümer DE.KATALOG GLOBAL.CATALOG Quelle Ziel Oracle GoldenGate 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 6. Konfiguration von Oracle GoldenGate Bei der homogenen Replikation  Einfach: keine Konvertierung erforderlich  Mapping zwischen Quell- und Zieltabellen – Bei unterschiedlichen Tabellennamen/-eigentümern  Parametereinstellungen: -- excerpt replicat parameter file ASSUMETARGETDEFS MAP global.catalog, TARGET de.katalog; 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 7. Agenda   Heterogene Replikation  Umgang mit Heterogenität  8 Homogene Replikation Beispiel: Unidirektionale Replikation von Oracle nach MySQL Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 8. Heterogene Replikation  Quell- und Zieltabellen nicht identisch – unterschiedliche DB-Systeme, unterschiedliche Tabellenstrukturen Quellsystem ≠ Zielsystem Oracle GoldenGate 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 9. Unterschiedliche Datenbanksysteme Datenbank Quelle Ziel Datenbank Quelle Ziel Oracle   NonStop SQL/MX   MySQL   Enscribe   SQL Server   Teradata   Sybase ASE   TimesTen -  DB2 LUW   PostgreSQL -  DB2 for i (OS400)   Netezza -  DB2 for z/OS   Greenplum -  Unterstützte Kombinationen aus DB/DB-Version für Oracle GoldenGate 11.2: http://www.oracle.com/technetwork/middleware/ias/downloads/fusion-certification-100350.html 10 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 10. Unterschiedliche Plattformen Betriebssystem Prozessorarchitektur Red Hat Linux x86 IBM zSeries Oracle Linux x86-64 IBM POWER Windows SPARC Oracle Solaris HP Itanium IBM z/OS HP NonStop (ehem. Tandem) IBM zLinux HP PA-RISC IBM (OS400) IBM AIX HP-UX 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Unterstützte Kombinationen aus Datenbank-/OS-Version OGG 11.2 http://www.oracle.com/technetwork/middleware/ias/downloads/fusioncertification-100350.html ileana.somesan@oracle.com
  • 11. Unterschiedliche Anzahl von Spalten PROD_ID NAME PROD_ID Quelle NAME PREIS Ziel Oracle GoldenGate 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 12. Unterschiedliche Reihenfolge der Spalten PROD_ID NAME PREIS PROD_ID Quelle PREIS NAME Ziel Oracle GoldenGate 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 13. Unterschiedliche Spaltennamen prod_id name ARTIKEL_ID Quelle NAME Ziel Oracle GoldenGate  Groß-/Kleinschreibung, Leerzeichen 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 14. Unterschiedliche Datentypen Und/oder Spaltenlänge prod_id: VARCHAR2(6) lieferdatum: DATE prod_id: VARCHAR2(8) Quelle lieferdatum: TIMESTAMP Ziel Oracle GoldenGate 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 15. Agenda   Heterogene Replikation  Umgang mit Heterogenität  16 Homogene Replikation Beispiel: Unidirektionale Replikation von Oracle nach MySQL Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 16. Oracle GoldenGate in Kenntnis setzen  Konvertierung Quellformat  Zielformat erforderlich – Mit Hilfe einer Datendefinitionsdatei  Parametereinstellungen -- excerpt replicat parameter file SOURCEDEFS /ogg/dirdef/ora2mysql.def 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 17. Definitionsdatei  Beschreibt die replizierten Daten in einem generischen Format – Zeichensatz, Datenbanktyp, Tabellenname, Anzahl der Spalten, Spaltendefinition,...  Mit Oracle GoldenGate DEFGEN Utility generieren – DEFGEN konfigurieren -- defgen.prm file DEFSFILE/ogg/dirdef/ora2mysql.def USERID oggsrc, PASSWORD *** TABLE warehouse.catalog; – DEFGEN ausführen $ defgen paramfile dirprm/defgen.prm 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 18. Prinzip der Metadaten-Konvertierung Auf dem Zielsystem Zielsystem Quellsystem Datendefinitionen der Zieltabellen - werden direkt abgefragt 1 Datendefinitionen für die Quelltabellen generieren - mittels DEFGEN 2 Definitionsdatei auf das Zielsystem kopieren 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. 3 Replicat Prozess konvertiert Daten ileana.somesan@oracle.com
  • 19. Mapping von Tabellen und Spalten DE.KATALOG GLOBAL.CATALOG PROD_ID NAME PRICE CURRENCY ARTIKEL_ID NAME EUR -- excerpt replicat parameter file SOURCEDEFS /ogg/dirdef/ora2mysql.def MAP global.catalog, TARGET de.katalog, COLMAP (USEDEFAULTS, ARTIKEL_ID=PROD_ID, EUR=PRICE); 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 20. Spaltentransformationen GLOBAL.CUSTOMERS EMEA.CUSTOMERS CUST_NAME NAME PHONE_NO COUNTRY_CODE REG_PREFIX PHONE_NO -- excerpt replicat parameter file SOURCEDEFS /ogg/dirdef/ora2mysql.def MAP global.customers, TARGET emea.customers, COLMAP ( NAME=CUST_NAME, COUNTRY_CODE=@STREXT(PHONE_NO, 1, 3), REG_PREFIX=@STREXT(PHONE_NO, 4, 6), PHONE_NO=@STREXT(PHONE_NO, 7, 10)); 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 21. Spaltentransformationen  > 30 vordefinierte Funktionen  Eigene Funktionen – Arithmetische Operationen – Operationen auf Zeichenketten, Datum- – Über Oracle GoldenGate User Exits implementieren und Zeitfelder – Test auf Vorhandensein eines Spaltenwertes – Handling von NULL, fehlenden oder ungültigen Werten Oracle GoldenGate Reference Guide, Column Conversion Functions 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 22. Agenda   Heterogene Replikation  Umgang mit Heterogenität  23 Homogene Replikation Beispiel: Unidirektionale Replikation von Oracle nach MySQL Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 23. Prüfen Sie zu Beginn...  welche Versionen von Oracle und MySQL unterstützt sind  Oracle GoldenGate Zertifizierungsmatrix  welche Datentypen unterstützt sind – fast alle Oracle- und MySQL-Datentypen  welche Operationen unterstützt sind – DML: Insert, Update, Delete – keine DDL-Replikation nach MySQL  Oracle GoldenGate Oracle Installation & Setup Guide  Oracle GoldenGate MySQL Installation & Setup Guide 24 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 24. Oracle GoldenGate Installation  Download von edelivery.oracle.com oder My Oracle Support – Unter Oracle Fusion Middleware – 2 Produkte: Oracle GoldenGate for Oracle,  2 Installationen: – auf Oracle DB Quellserver (alternativ auf Standby Server) – auf MySQL Zielserver Oracle GoldenGate for MySQL  Keine weiteren SW-Komponenten Oracle GoldenGate for Oracle Oracle Quellsystem 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Oracle GoldenGate for MySQL MySQL Zielsystem ileana.somesan@oracle.com
  • 25. Vorbereitung der Oracle Datenbank  DB-Benutzer für Oracle GoldenGate erstellen, Berechtigungen zuweisen  (Archivelogging einschalten)  Supplemental Logging einschalten  Für Eindeutigkeit der Zeilen sorgen  Datendefinitionen der Quelltabellen Redo Log Files generieren, auf Zielsystem übertragen – Oracle GoldenGate DEFGEN Utility Extract 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 26. 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  DB-Benutzer für Oracle GoldenGate erstellen, Berechtigungen zuweisen  Checkpoint-Tabelle anlegen 27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Remote Trail Files Replicat ileana.somesan@oracle.com
  • 27. 2 Schritte zur Replikation 1 2 Leere MySQL Datenbank mit Oracle Daten befüllen  Oracle GoldenGate oder andere Werkzeuge 28 Dauerhafte Synchronisation starten  Oracle GoldenGate Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 28. Konfiguration von Oracle GoldenGate 2 Für die Synchronisation Oracle - MySQL  Trail Files registrieren  Extract, Data Pump und Replicat Prozesse konfigurieren und starten Manager Manager Redo Log Files ora_ext 29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. /dirdat/lt ora_pmp /dirdat/rt mys_rep ileana.somesan@oracle.com
  • 29. Komplette Anleitung auf isblog.de 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 30. Demo Ziel: MySQL Quelle: Oracle DB FILIALE.ARTIKEL WAREHOUSE.CATALOG PROD_ID NAME PRICE CURRENCY ARTIKEL_ID NAME EUR 111111 Canon EOS 700D 569.50 EUR 111111 Canon EOS 700D 569.50 222222 Panasonic Lumix DMC-G6 579.10 EUR 222222 Panasonic Lumix DMC-G6 579.10 333333 Sony Alpha 58 404.81 EUR 333333 Sony Alpha 58 404.81 @insert.sql @update.sql Oracle GoldenGate: Konvertierung der Daten + Synchronisation @delete.sql 31 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 31. 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 My Oracle Support für Patches und Updates  Oracle GoldenGate 11.2.1 Dokumentation – Oracle Installation and Setup Guide – MySQL Installation and Setup Guide  Anleitung Unidirektionale Replikation zwischen Oracle und MySQL 32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 33. 34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com
  • 34. 35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. ileana.somesan@oracle.com