Your SlideShare is downloading. ×
UKOUG 2011: MySQL Architectures for Oracle DBA's
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

UKOUG 2011: MySQL Architectures for Oracle DBA's


Published on

Published in: Technology, Education

1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide


  • 1. MySQL Architectures for Oracle DBAs UKOUG Conference 2011 th December 5 , Birmingham Oli Sennhauser Senior MySQL Consultant, FromDual 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 (● Oracle Silver Partner (OPN)● More informations at: 2
  • 3. Our customer 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 4
  • 5. The LAMP StackWe 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 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 buys2000: MySQL for USD 1000GPL Mio Apr 2009: Jan 2001: v3.23 2008: Branching Oracle buys GA of MySQL begins Sun for USD 7400 Mio 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 7
  • 8. Branches and Forks Google patches Oct OurDelta MySQL Branch Jul ProvenScaling MySQL Branch (†) May MariaDB/Aria MySQL/MyISAM Branch Fork ? MySQL2008 2009 2010 Dec XtraDB InnoDB Branch / Percona Build / Percona Server Jul Drizzle MySQL Fork 8
  • 9. Switch from Oracle? Oracle MySQL It needs some time to adapt (3 - 6 monts?)! 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 ... 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 ... 11
  • 12. The most important StorageEngines (SE)● MyISAM / Aria● InnoDB / XtraDB / PBXT (transactional SE)● MEMORY● NDB (MySQL Cluster)● Federated-X (~ Oracle DB-Link)● CSV, Archive, Blackhole● Spider, etc. 12
  • 13. Migration from Oracle to MySQL● Application?● Most difficult: PL/SQL● >> 1 Tbyte?● MySQL Migration Tool-kit helps you● ETL tools help you 13
  • 14. Differences between Oracle andMySQL● 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! 14
  • 15. Other differences between Oracleand 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 15
  • 16. Further differences betweenOracle 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 16
  • 17. MySQL Scale-Out vs. Scale-Up ● Cost Scale-Up ● MySQL design ● Physical bottlenecks ● „Relaxation of Constraints“ Scale-Out 17
  • 18. The MySQL Scale-Out approach Application ro rtw Slave Reporting Master Slave Backup Slave 1 Slave 2 Slave 3 ... Load balancer 18
  • 19. Active/passive fail-over with SAN App App App VIP M M SAN Slave1 Slave2 Slave3 Load balancing (LB) 19
  • 20. Active/passive fail-over with SAN● SPOF! App App App VIP M M !!! SAN Slave1 Slave2 Slave3 Load balancing (LB) 20
  • 21. Active/passive fail-over withDRBD App App App VIP M M DRBD Slave1 Slave2 Slave3 Load balancing (LB) 21
  • 22. Active/passive fail-over withDRBD App App App VIP M M DRBD Slave1 Slave2 Slave3 Load balancing (LB) 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 1Mgm Node 2 Data Node 1 Data Node 2 Sw. Sw. Data Node 3 Data Node 4 23
  • 24. Some Architectures put in place 24
  • 25. Laser welding device from the carindustry 25
  • 26. Data collection of laser devices 26
  • 27. Measuring of media consumption 27
  • 28. Car-Sharing platform 28
  • 29. Solar cell production 29
  • 30. Solar cell production 30
  • 31. Online Stock trading platform 31
  • 32. Questions and Discussion ? Slides: or 32