SlideShare une entreprise Scribd logo
1  sur  32
Télécharger pour lire hors ligne
MySQL Architectures for Oracle DBA's

       UKOUG Conference 2011
                 th
       December 5 , Birmingham

             Oli Sennhauser
         Senior MySQL Consultant, FromDual

        oli.sennhauser@fromdual.com

                   www.fromdual.com          1
FromDual
●   FromDual provides neutral and independent:
    ●  Consulting for MySQL (on-site and remote)
     ● Remote-DBA / MySQL operations


     ● Support for Galera (synchronous MySQL Replication)


     ● Support for MySQL (Basic and Silver)


     ● Training for MySQL


●   Consulting Partner of Open Database Alliance
    (ODBA.org)
●   Oracle Silver Partner (OPN)
●   More informations at: www.fromdual.com

                          www.fromdual.com                  2
Our customer




               www.fromdual.com   3
Content
●   The LAMP Stack
●   History of MySQL
●   Open Source
●   Branches and Forks
●   Move from Oracle?
●   MySQL Architecture
●   Pluggable Storage Engines
●   Differences between Oracle and MySQL
●   Scale-Up vs. Scale-Out
●   High-Availability solutions
●   Architectures put in place
                             www.fromdual.com   4
The LAMP Stack

We are the Web!        Who is           Alternatives
                       behind?
                                        Perl, Java, Python,
   PHP              Zend Technologies
                                               Ruby

   MySQL               MySQL/Oracle     PostgreSQL, others

                     Apache Software
   Apache              Foundation       Lighty (lighttpd), IIS

                                         Windows, Solaris,
   Linux             Linux Foundation
                                           BSD, others




                  www.fromdual.com                               5
History of MySQL
                                                              Oracle tries to
      1995: project started
                                                               buy MySQL
      by Monty Widenius,              Oct 2005:
       David Axmark and              Oracle buys
         Allan Larsson              Innobase OY
                                   InnoDB Friday
                                                                   IPO is announced
                                                                        for 2008


...    2000   01     02       03      04     2005      06     07     08    09   2010


 Jun                               Jan 2008: Sun buys
2000:                              MySQL for USD 1000
GPL                                       Mio
                                                                                 Apr 2009:
                    Jan 2001: v3.23                 2008: Branching             Oracle buys
                          GA                        of MySQL begins             Sun for USD
                                                                                 7400 Mio
                                           www.fromdual.com                                   6
Open Source
●   Basics:
    ● Source code is available and visible (transparency)
    ● Source code can be changed, adapted or used elsewhere


    ● Everybody can participate: Communities


●   Advantages
    ● „no“ Vendor Lock-in!
    ● More flexibility!


    ● Less costs?


    ● Better Quality?


    ● Higher reliability?


●   Disadvantages
    ● Not everything is served on a golden plate: „read the source“!
    ● Potential for conflicts as soon as commercial interests come into the game


●   For me personally important: Know-how transfer, freedom of know-how
                                  www.fromdual.com                             7
Branches and Forks

                                                                        Google patches

                                  Oct OurDelta MySQL Branch
       Jul ProvenScaling
       MySQL Branch (†)                                May MariaDB/Aria MySQL/MyISAM Branch   Fork ?



                                                                                         MySQL
2008                                 2009                                2010

                      Dec XtraDB InnoDB Branch / Percona Build / Percona Server


         Jul Drizzle MySQL Fork




                                            www.fromdual.com                                           8
Switch from Oracle?
       Oracle                        MySQL




 It needs some time to adapt (3 - 6 monts?)!
                  www.fromdual.com             9
MySQL Architecture
             Application / Client

  Thread            Connection          mysqld
  Cache              Manager                                       Parser
                                        Optimizer
                      User Au-
                            MySQL is a multi-thread and
                    thentication
                                NOT a multi-process
                                      Access Control
                                   application!
                     Command                                          Table Open
  Logging
                     Dispatcher                                      Cache (.frm, fh)
                                         Table Manager
   Query            Query Cache                                      Table Definition
   Cache              Module                                         Cache (tbl def.)

                                     Handler Interface


  MyISAM   InnoDB    Memory   NDB      PBXT        Aria   XtraDB    Federated-X   ...


                                    www.fromdual.com                                    10
Pluggable Storage Engines (SE)
●   The concept of Storage Engines (SE)
●   A Storage Engine is a database kernel
    Conventional
      (R)DBMS
    = monolithic

                       MYSQL SE
                      Handler Interface

                   ISAM MyISAM    BDB     ...
                                                            plug-in
                         built-in
                                                   MYSQL pluggable SE
                                                         Handler Interface

                                                InnoDB MyISAM PBXT    NDB    ...

                           www.fromdual.com                                        11
The most important Storage
Engines (SE)
●   MyISAM / Aria
●   InnoDB / XtraDB / PBXT (transactional SE)
●   MEMORY
●   NDB (MySQL Cluster)
●   Federated-X (~ Oracle DB-Link)
●   CSV, Archive, Blackhole
●   Spider, etc.

                    www.fromdual.com            12
Migration from Oracle to MySQL
●   Application?
●   Most difficult: PL/SQL
●   >> 1 Tbyte?

●   MySQL Migration Tool-kit helps you
●   ETL tools help you



                     www.fromdual.com    13
Differences between Oracle and
MySQL
●   Characteristics is SE dependent → configuration
●   Transactions/Locking is SE dependent
      → InnoDB / XtraDB / PBXT are the closest SE
●   Some buffers / caches are SE dependent, others are not
      → Configure differently depending on you needs
●   Connections in Oracle are expensive, in MySQL they are
    quite cheap
●   Oracle is a multi-process architecture, MySQL is a multi-
    thread architecture
●   Oracle has a fixed size shared memory SGA, MySQL has
    dynamic memory for the process → can grow!
                          www.fromdual.com                 14
Other differences between Oracle
and MySQL
●   Oracle has tablespaces / redo log files → in MySQL 1 system
    TS (+ 1 tablespace per table) and the transaction log files
    (ib_logfile<n>).
●   Oracle has rman, in MySQL you have many tools (mysqldump,
    mysql, mysqlbackup, xtrabackup, …)
    ● Backup in MySQL can be done wrong!
●   exp / imp → mysqldump / mysql
●   rman → mysqlbackup / xtrabackup
●   OEM/Grid Control → MySQL Enterprise Monitor (will be
    integrated into OEM/GC?)
●   RAC → Galera / MySQL Cluster
●   Oracle Streams Replication → MySQL Replication
                            www.fromdual.com                      15
Further differences between
Oracle and MySQL
●   MySQL has different Logs:
    ● Error Log (= alert.log)
    ● Binary Log (~ archive log)


    ● Transaction Log (~ REDO log, but Binary

      Log != Transaction Log)
    ● General Query log (Oracle ?)


●   Schema in Oracle: User + Objects
●   Schema in MySQL: indepent of user
●   Oracle: Scale-up, MySQL: Scale-out
                     www.fromdual.com           16
MySQL Scale-Out vs. Scale-Up

         ● Cost
                              Scale-Up
         ● MySQL design

         ● Physical bottlenecks




     ●   „Relaxation of Constraints“
                                Scale-Out

                         www.fromdual.com   17
The MySQL Scale-Out approach

                        Application
                  ro
                                 rtw
                                              Slave Reporting
                            Master

                                                  Slave Backup

     Slave 1      Slave 2         Slave 3
                                            ...


               Load balancer




                       www.fromdual.com                          18
Active/passive fail-over with SAN
              App       App            App



                               VIP


                          M'             M


                               SAN



         Slave1          Slave2              Slave3

                  Load balancing (LB)

                    www.fromdual.com                  19
Active/passive fail-over with SAN
●   SPOF!        App       App            App



                                  VIP


                             M'             M


                            !!!   SAN



            Slave1          Slave2              Slave3

                     Load balancing (LB)

                       www.fromdual.com                  20
Active/passive fail-over with
DRBD
              App       App            App



                               VIP


                          M'             M


                               DRBD



         Slave1          Slave2              Slave3

                  Load balancing (LB)

                    www.fromdual.com                  21
Active/passive fail-over with
DRBD
              App       App            App



                               VIP


                          M'             M


                               DRBD



         Slave1          Slave2              Slave3

                  Load balancing (LB)

                    www.fromdual.com                  22
MySQL Cluster
    Application   Application      Application      Application    Application
     NDB-API       NDB-API
                                                   Load balancer

                                   SQL Node 1       SQL Node 2     SQL Node 3
                                                                                 ...
Mgm Node 1


Mgm Node 2
                     Data Node 1            Data Node 2


                                     Sw.
                                      Sw.

                     Data Node 3            Data Node 4


                                www.fromdual.com                                  23
Some Architectures put in place




           www.fromdual.com       24
Laser welding device from the car
industry




             www.fromdual.com   25
Data collection of laser devices




              www.fromdual.com     26
Measuring of media consumption




            www.fromdual.com   27
Car-Sharing platform




             www.fromdual.com   28
Solar cell production




              www.fromdual.com   29
Solar cell production




              www.fromdual.com   30
Online Stock trading platform




             www.fromdual.com   31
Questions and Discussion




                  ?
       Slides: www.fromdual.com
                      or
      oli.sennhauser@fromdual.com
              www.fromdual.com      32

Contenu connexe

Tendances

A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
Insight Technology, Inc.
 
What's New in MySQL 5.6
What's New in MySQL 5.6What's New in MySQL 5.6
What's New in MySQL 5.6
Santo Leto
 
Using MySQL in Automated Testing
Using MySQL in Automated TestingUsing MySQL in Automated Testing
Using MySQL in Automated Testing
Morgan Tocker
 

Tendances (20)

Upgrade to MySQL 5.7 and latest news planned for MySQL 8
Upgrade to MySQL 5.7 and latest news planned for MySQL 8Upgrade to MySQL 5.7 and latest news planned for MySQL 8
Upgrade to MySQL 5.7 and latest news planned for MySQL 8
 
MaxScale - the pluggable router
MaxScale - the pluggable routerMaxScale - the pluggable router
MaxScale - the pluggable router
 
MySQL High Availability Solutions
MySQL High Availability SolutionsMySQL High Availability Solutions
MySQL High Availability Solutions
 
Converting from MySQL to PostgreSQL
Converting from MySQL to PostgreSQLConverting from MySQL to PostgreSQL
Converting from MySQL to PostgreSQL
 
MySQL For Oracle Developers
MySQL For Oracle DevelopersMySQL For Oracle Developers
MySQL For Oracle Developers
 
Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011Choosing a MySQL High Availability solution - Percona Live UK 2011
Choosing a MySQL High Availability solution - Percona Live UK 2011
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
 
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin CharlesA26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
 
Escalabilidad horizontal y Arquitecturas elásticas en Windows Azure | SolidQ ...
Escalabilidad horizontal y Arquitecturas elásticas en Windows Azure | SolidQ ...Escalabilidad horizontal y Arquitecturas elásticas en Windows Azure | SolidQ ...
Escalabilidad horizontal y Arquitecturas elásticas en Windows Azure | SolidQ ...
 
What's New in MySQL 5.6
What's New in MySQL 5.6What's New in MySQL 5.6
What's New in MySQL 5.6
 
MySQL 开发
MySQL 开发MySQL 开发
MySQL 开发
 
Using MySQL in Automated Testing
Using MySQL in Automated TestingUsing MySQL in Automated Testing
Using MySQL in Automated Testing
 
Amazon Aurora로 안전하게 migration 하기
Amazon Aurora로 안전하게 migration 하기Amazon Aurora로 안전하게 migration 하기
Amazon Aurora로 안전하게 migration 하기
 
MySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgradeMySQL 5.7 - What's new and How to upgrade
MySQL 5.7 - What's new and How to upgrade
 
PostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQLPostgreSQL as an Alternative to MSSQL
PostgreSQL as an Alternative to MSSQL
 
MariaDB 5.5 and what comes next - Percona Live NYC 2012
MariaDB 5.5 and what comes next - Percona Live NYC 2012MariaDB 5.5 and what comes next - Percona Live NYC 2012
MariaDB 5.5 and what comes next - Percona Live NYC 2012
 
Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019
 
MySQL 5.7 milestone
MySQL 5.7 milestoneMySQL 5.7 milestone
MySQL 5.7 milestone
 
MySQL Performance Metrics that Matter
MySQL Performance Metrics that MatterMySQL Performance Metrics that Matter
MySQL Performance Metrics that Matter
 
High-Availability using MySQL Fabric
High-Availability using MySQL FabricHigh-Availability using MySQL Fabric
High-Availability using MySQL Fabric
 

En vedette

Structural Design pattern - Adapter
Structural Design pattern - AdapterStructural Design pattern - Adapter
Structural Design pattern - Adapter
Manoj Kumar
 
MySQL Query And Index Tuning
MySQL Query And Index TuningMySQL Query And Index Tuning
MySQL Query And Index Tuning
Manikanda kumar
 

En vedette (20)

MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014MySQL Performance Tuning at COSCUP 2014
MySQL Performance Tuning at COSCUP 2014
 
Understanding MySQL Performance through Benchmarking
Understanding MySQL Performance through BenchmarkingUnderstanding MySQL Performance through Benchmarking
Understanding MySQL Performance through Benchmarking
 
Real World Power Query for Excel and Power BI - SQL Saturday #576
Real World Power Query for Excel and Power BI - SQL Saturday #576Real World Power Query for Excel and Power BI - SQL Saturday #576
Real World Power Query for Excel and Power BI - SQL Saturday #576
 
Linux performance tuning & stabilization tips (mysqlconf2010)
Linux performance tuning & stabilization tips (mysqlconf2010)Linux performance tuning & stabilization tips (mysqlconf2010)
Linux performance tuning & stabilization tips (mysqlconf2010)
 
2015 NCAIR Excel Power Tools
2015 NCAIR Excel Power Tools2015 NCAIR Excel Power Tools
2015 NCAIR Excel Power Tools
 
MySQL Manchester TT - Performance Tuning
MySQL Manchester TT  - Performance TuningMySQL Manchester TT  - Performance Tuning
MySQL Manchester TT - Performance Tuning
 
How to Analyze and Tune MySQL Queries for Better Performance
How to Analyze and Tune MySQL Queries for Better PerformanceHow to Analyze and Tune MySQL Queries for Better Performance
How to Analyze and Tune MySQL Queries for Better Performance
 
Meilleures pratiques d'affaires avec Power Pivot
Meilleures pratiques d'affaires avec Power PivotMeilleures pratiques d'affaires avec Power Pivot
Meilleures pratiques d'affaires avec Power Pivot
 
Structural Design pattern - Adapter
Structural Design pattern - AdapterStructural Design pattern - Adapter
Structural Design pattern - Adapter
 
MySQL Performance Tips & Best Practices
MySQL Performance Tips & Best PracticesMySQL Performance Tips & Best Practices
MySQL Performance Tips & Best Practices
 
MySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 TipsMySQL Performance Tuning: Top 10 Tips
MySQL Performance Tuning: Top 10 Tips
 
Mysql Explain Explained
Mysql Explain ExplainedMysql Explain Explained
Mysql Explain Explained
 
Optimizing MySQL Queries
Optimizing MySQL QueriesOptimizing MySQL Queries
Optimizing MySQL Queries
 
Linux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQLLinux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQL
 
Adapter Design Pattern
Adapter Design PatternAdapter Design Pattern
Adapter Design Pattern
 
MySQL Query And Index Tuning
MySQL Query And Index TuningMySQL Query And Index Tuning
MySQL Query And Index Tuning
 
How to Design Indexes, Really
How to Design Indexes, ReallyHow to Design Indexes, Really
How to Design Indexes, Really
 
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
MySQL Performance Tuning. Part 1: MySQL Configuration (includes MySQL 5.7)
 
Adapter Design Pattern
Adapter Design PatternAdapter Design Pattern
Adapter Design Pattern
 
Implementing the Adapter Design Pattern
Implementing the Adapter Design PatternImplementing the Adapter Design Pattern
Implementing the Adapter Design Pattern
 

Similaire à UKOUG 2011: MySQL Architectures for Oracle DBA's

Ukoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dbaUkoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dba
orablue11
 
OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?
FromDual GmbH
 
Oracle my sql cluster cge
Oracle my sql cluster cgeOracle my sql cluster cge
Oracle my sql cluster cge
seungdon1
 
Free Software and the Future of Database Technology
Free Software and the Future of Database TechnologyFree Software and the Future of Database Technology
Free Software and the Future of Database Technology
elliando dias
 
My sql 5.5_product_update
My sql 5.5_product_updateMy sql 5.5_product_update
My sql 5.5_product_update
henriquesidney
 
Technology Day 2011 MySQL & MariaDB
Technology Day 2011 MySQL & MariaDBTechnology Day 2011 MySQL & MariaDB
Technology Day 2011 MySQL & MariaDB
Dan-Claudiu Dragoș
 
What is new in MySQL? (Lars Thalmann)
What is new in MySQL? (Lars Thalmann)What is new in MySQL? (Lars Thalmann)
What is new in MySQL? (Lars Thalmann)
Ontico
 

Similaire à UKOUG 2011: MySQL Architectures for Oracle DBA's (20)

Ukoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dbaUkoug 2011 mysql_arch_for_orcl_dba
Ukoug 2011 mysql_arch_for_orcl_dba
 
Oracle mysql comparison
Oracle mysql comparisonOracle mysql comparison
Oracle mysql comparison
 
OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?OpenExpo: MySQL, Where are you going?
OpenExpo: MySQL, Where are you going?
 
Playing in the Same Sandbox: MySQL and Oracle
Playing in the Same Sandbox:  MySQL and OraclePlaying in the Same Sandbox:  MySQL and Oracle
Playing in the Same Sandbox: MySQL and Oracle
 
Oracle my sql cluster cge
Oracle my sql cluster cgeOracle my sql cluster cge
Oracle my sql cluster cge
 
Tutorial MySQL com Java
Tutorial MySQL com JavaTutorial MySQL com Java
Tutorial MySQL com Java
 
MySQL高可用
MySQL高可用MySQL高可用
MySQL高可用
 
Posscon my sql56
Posscon my sql56Posscon my sql56
Posscon my sql56
 
Free Software and the Future of Database Technology
Free Software and the Future of Database TechnologyFree Software and the Future of Database Technology
Free Software and the Future of Database Technology
 
My sql 5.5_product_update
My sql 5.5_product_updateMy sql 5.5_product_update
My sql 5.5_product_update
 
NoSQL with MySQL
NoSQL with MySQLNoSQL with MySQL
NoSQL with MySQL
 
Technology Day 2011 MySQL & MariaDB
Technology Day 2011 MySQL & MariaDBTechnology Day 2011 MySQL & MariaDB
Technology Day 2011 MySQL & MariaDB
 
MySQL Spatial
MySQL SpatialMySQL Spatial
MySQL Spatial
 
My sql crashcourse_2012
My sql crashcourse_2012My sql crashcourse_2012
My sql crashcourse_2012
 
My sql crashcourse_intro_kdl
My sql crashcourse_intro_kdlMy sql crashcourse_intro_kdl
My sql crashcourse_intro_kdl
 
Embracing Database Diversity: The New Oracle / MySQL DBA - UKOUG
Embracing Database Diversity: The New Oracle / MySQL DBA -   UKOUGEmbracing Database Diversity: The New Oracle / MySQL DBA -   UKOUG
Embracing Database Diversity: The New Oracle / MySQL DBA - UKOUG
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020
 
MySQL Cluster performance best practices
MySQL Cluster performance best practicesMySQL Cluster performance best practices
MySQL Cluster performance best practices
 
MySQL
MySQL MySQL
MySQL
 
What is new in MySQL? (Lars Thalmann)
What is new in MySQL? (Lars Thalmann)What is new in MySQL? (Lars Thalmann)
What is new in MySQL? (Lars Thalmann)
 

Plus de FromDual GmbH

Plus de FromDual GmbH (20)

MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...MariaDB/MySQL pitfalls - And how to come out again...
MariaDB/MySQL pitfalls - And how to come out again...
 
MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?MariaDB / MySQL tripping hazard and how to get out again?
MariaDB / MySQL tripping hazard and how to get out again?
 
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration WorkshopPXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
PXC 5.5 to MariaDB 10.4 Galera Cluster Migration Workshop
 
IT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New FeaturesIT Tage 2019 MariaDB 10.4 New Features
IT Tage 2019 MariaDB 10.4 New Features
 
MariaDB 10.4 New Features
MariaDB 10.4 New FeaturesMariaDB 10.4 New Features
MariaDB 10.4 New Features
 
MariaDB 10.2 New Features
MariaDB 10.2 New FeaturesMariaDB 10.2 New Features
MariaDB 10.2 New Features
 
PERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schemaPERFORMANCE_SCHEMA and sys schema
PERFORMANCE_SCHEMA and sys schema
 
MySQL für Oracle DBA's
MySQL für Oracle DBA'sMySQL für Oracle DBA's
MySQL für Oracle DBA's
 
MySQL Backup/Recovery
MySQL Backup/RecoveryMySQL Backup/Recovery
MySQL Backup/Recovery
 
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
MySQL Beispiele aus der Praxis - Wie setzen Kunden MySQL ein?
 
MySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und ClusterMySQL-Server im Teamwork - Replikation und Cluster
MySQL-Server im Teamwork - Replikation und Cluster
 
Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?Der Datenbank-Backup ist gemacht - was nun?
Der Datenbank-Backup ist gemacht - was nun?
 
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-ReplikationWeltweite Produktionsdatenverwaltung mit MySQL-Replikation
Weltweite Produktionsdatenverwaltung mit MySQL-Replikation
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
 
MySQL Security SLAC 2015
MySQL Security SLAC 2015MySQL Security SLAC 2015
MySQL Security SLAC 2015
 
MySQL Performance Tuning für Entwickler
MySQL Performance Tuning für EntwicklerMySQL Performance Tuning für Entwickler
MySQL Performance Tuning für Entwickler
 
MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?MySQL Replikation - Die Eier legende Wollmilchsau?
MySQL Replikation - Die Eier legende Wollmilchsau?
 
Reading MySQL fingerprints
Reading MySQL fingerprintsReading MySQL fingerprints
Reading MySQL fingerprints
 
High-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQLHigh-availability with Galera Cluster for MySQL
High-availability with Galera Cluster for MySQL
 
MySQL always-up with Galera Cluster
MySQL always-up with Galera ClusterMySQL always-up with Galera Cluster
MySQL always-up with Galera Cluster
 

Dernier

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Dernier (20)

Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

UKOUG 2011: MySQL Architectures for Oracle DBA's

  • 1. MySQL Architectures for Oracle DBA's UKOUG Conference 2011 th December 5 , Birmingham Oli Sennhauser Senior MySQL Consultant, FromDual oli.sennhauser@fromdual.com www.fromdual.com 1
  • 2. FromDual ● FromDual provides neutral and independent: ● Consulting for MySQL (on-site and remote) ● Remote-DBA / MySQL operations ● Support for Galera (synchronous MySQL Replication) ● Support for MySQL (Basic and Silver) ● Training for MySQL ● Consulting Partner of Open Database Alliance (ODBA.org) ● Oracle Silver Partner (OPN) ● More informations at: www.fromdual.com www.fromdual.com 2
  • 3. Our customer www.fromdual.com 3
  • 4. Content ● The LAMP Stack ● History of MySQL ● Open Source ● Branches and Forks ● Move from Oracle? ● MySQL Architecture ● Pluggable Storage Engines ● Differences between Oracle and MySQL ● Scale-Up vs. Scale-Out ● High-Availability solutions ● Architectures put in place www.fromdual.com 4
  • 5. The LAMP Stack We are the Web! Who is Alternatives behind? Perl, Java, Python, PHP Zend Technologies Ruby MySQL MySQL/Oracle PostgreSQL, others Apache Software Apache Foundation Lighty (lighttpd), IIS Windows, Solaris, Linux Linux Foundation BSD, others www.fromdual.com 5
  • 6. History of MySQL Oracle tries to 1995: project started buy MySQL by Monty Widenius, Oct 2005: David Axmark and Oracle buys Allan Larsson Innobase OY InnoDB Friday IPO is announced for 2008 ... 2000 01 02 03 04 2005 06 07 08 09 2010 Jun Jan 2008: Sun buys 2000: MySQL for USD 1000 GPL Mio Apr 2009: Jan 2001: v3.23 2008: Branching Oracle buys GA of MySQL begins Sun for USD 7400 Mio www.fromdual.com 6
  • 7. Open Source ● Basics: ● Source code is available and visible (transparency) ● Source code can be changed, adapted or used elsewhere ● Everybody can participate: Communities ● Advantages ● „no“ Vendor Lock-in! ● More flexibility! ● Less costs? ● Better Quality? ● Higher reliability? ● Disadvantages ● Not everything is served on a golden plate: „read the source“! ● Potential for conflicts as soon as commercial interests come into the game ● For me personally important: Know-how transfer, freedom of know-how www.fromdual.com 7
  • 8. Branches and Forks Google patches Oct OurDelta MySQL Branch Jul ProvenScaling MySQL Branch (†) May MariaDB/Aria MySQL/MyISAM Branch Fork ? MySQL 2008 2009 2010 Dec XtraDB InnoDB Branch / Percona Build / Percona Server Jul Drizzle MySQL Fork www.fromdual.com 8
  • 9. Switch from Oracle? Oracle MySQL It needs some time to adapt (3 - 6 monts?)! www.fromdual.com 9
  • 10. MySQL Architecture Application / Client Thread Connection mysqld Cache Manager Parser Optimizer User Au- MySQL is a multi-thread and thentication NOT a multi-process Access Control application! Command Table Open Logging Dispatcher Cache (.frm, fh) Table Manager Query Query Cache Table Definition Cache Module Cache (tbl def.) Handler Interface MyISAM InnoDB Memory NDB PBXT Aria XtraDB Federated-X ... www.fromdual.com 10
  • 11. Pluggable Storage Engines (SE) ● The concept of Storage Engines (SE) ● A Storage Engine is a database kernel Conventional (R)DBMS = monolithic MYSQL SE Handler Interface ISAM MyISAM BDB ... plug-in built-in MYSQL pluggable SE Handler Interface InnoDB MyISAM PBXT NDB ... www.fromdual.com 11
  • 12. The most important Storage Engines (SE) ● MyISAM / Aria ● InnoDB / XtraDB / PBXT (transactional SE) ● MEMORY ● NDB (MySQL Cluster) ● Federated-X (~ Oracle DB-Link) ● CSV, Archive, Blackhole ● Spider, etc. www.fromdual.com 12
  • 13. Migration from Oracle to MySQL ● Application? ● Most difficult: PL/SQL ● >> 1 Tbyte? ● MySQL Migration Tool-kit helps you ● ETL tools help you www.fromdual.com 13
  • 14. Differences between Oracle and MySQL ● Characteristics is SE dependent → configuration ● Transactions/Locking is SE dependent → InnoDB / XtraDB / PBXT are the closest SE ● Some buffers / caches are SE dependent, others are not → Configure differently depending on you needs ● Connections in Oracle are expensive, in MySQL they are quite cheap ● Oracle is a multi-process architecture, MySQL is a multi- thread architecture ● Oracle has a fixed size shared memory SGA, MySQL has dynamic memory for the process → can grow! www.fromdual.com 14
  • 15. Other differences between Oracle and MySQL ● Oracle has tablespaces / redo log files → in MySQL 1 system TS (+ 1 tablespace per table) and the transaction log files (ib_logfile<n>). ● Oracle has rman, in MySQL you have many tools (mysqldump, mysql, mysqlbackup, xtrabackup, …) ● Backup in MySQL can be done wrong! ● exp / imp → mysqldump / mysql ● rman → mysqlbackup / xtrabackup ● OEM/Grid Control → MySQL Enterprise Monitor (will be integrated into OEM/GC?) ● RAC → Galera / MySQL Cluster ● Oracle Streams Replication → MySQL Replication www.fromdual.com 15
  • 16. Further differences between Oracle and MySQL ● MySQL has different Logs: ● Error Log (= alert.log) ● Binary Log (~ archive log) ● Transaction Log (~ REDO log, but Binary Log != Transaction Log) ● General Query log (Oracle ?) ● Schema in Oracle: User + Objects ● Schema in MySQL: indepent of user ● Oracle: Scale-up, MySQL: Scale-out www.fromdual.com 16
  • 17. MySQL Scale-Out vs. Scale-Up ● Cost Scale-Up ● MySQL design ● Physical bottlenecks ● „Relaxation of Constraints“ Scale-Out www.fromdual.com 17
  • 18. The MySQL Scale-Out approach Application ro rtw Slave Reporting Master Slave Backup Slave 1 Slave 2 Slave 3 ... Load balancer www.fromdual.com 18
  • 19. Active/passive fail-over with SAN App App App VIP M' M SAN Slave1 Slave2 Slave3 Load balancing (LB) www.fromdual.com 19
  • 20. Active/passive fail-over with SAN ● SPOF! App App App VIP M' M !!! SAN Slave1 Slave2 Slave3 Load balancing (LB) www.fromdual.com 20
  • 21. Active/passive fail-over with DRBD App App App VIP M' M DRBD Slave1 Slave2 Slave3 Load balancing (LB) www.fromdual.com 21
  • 22. Active/passive fail-over with DRBD App App App VIP M' M DRBD Slave1 Slave2 Slave3 Load balancing (LB) www.fromdual.com 22
  • 23. MySQL Cluster Application Application Application Application Application NDB-API NDB-API Load balancer SQL Node 1 SQL Node 2 SQL Node 3 ... Mgm Node 1 Mgm Node 2 Data Node 1 Data Node 2 Sw. Sw. Data Node 3 Data Node 4 www.fromdual.com 23
  • 24. Some Architectures put in place www.fromdual.com 24
  • 25. Laser welding device from the car industry www.fromdual.com 25
  • 26. Data collection of laser devices www.fromdual.com 26
  • 27. Measuring of media consumption www.fromdual.com 27
  • 28. Car-Sharing platform www.fromdual.com 28
  • 29. Solar cell production www.fromdual.com 29
  • 30. Solar cell production www.fromdual.com 30
  • 31. Online Stock trading platform www.fromdual.com 31
  • 32. Questions and Discussion ? Slides: www.fromdual.com or oli.sennhauser@fromdual.com www.fromdual.com 32