SlideShare a Scribd company logo
A Beginner’s Guide to
      MariaDB
         Colin Charles, Monty Program Ab
            colin@montyprogram.com
  http://montyprogram.com / http://mariadb.org/
  http://bytebot.net/blog / @bytebot on Twitter
O’Reilly MySQL Conference & Expo - 12 April 2011
Aims


• Give you an update of what we’ve done in
  the past year (plus since project inception)
• Discuss the broader MySQL ecosystem
What is it?

• A branch of MySQL with more features?
• A branch of MySQL with better features?
• A fork?
MariaDB is...

• Community Developed
• Feature Enhanced
• Backward Compatible
Who’s behind it?

• MySQL (database) owned by MySQL AB
  (company)
• Monty Program is just a sponsor of
  MariaDB
• MariaDB: Open Database Alliance, Percona,
  PrimeBase, Open Query, etc.
When did this begin?

• Sun buys MySQL AB in January 2008
• Oracle proposes acquisition of Sun
  Microsystems in April 2009
• Monty decides that beyond the engine
  (Febuary 2009), focus on MariaDB, a
  complete database solution
Why MariaDB?


• MySQL - an open source product or
  project?
• MariaDB is an open source project
Aims of MariaDB

• 100% compatible, drop-in replacement to
  MySQL
• Stable (bug-free) releases
• GPLv2
Compatibility with
         MySQL
•   There is no NDB cluster        •   Tools are similar (some
    storage engine                     additional tools for Aria,
                                       PBXT)
•   Client libraries, client-
    server protocol, SQL           •   XtraDB enabled by default;
    dialect, replication master-       InnoDB and InnoDB plugin
    slave all similar                  are included, but not
                                       enabled by default
•   Data files are supported as
    long as its similar between    •   http://kb.askmonty.org/v/
    versions                           mariadb-versus-mysql-
                                       compatibility
What’s in MariaDB 5.1
•   Released February 2010    •   Croatian collations

•   Create external           •   Numerous bug fixes
    buildsystem using
    Buildbot + VMs for test   •   Test cases and coverage
    +builds                       improvements

•   Release filled with        •   Removal of mutexes
    storage engines
                              •   Compiler warnings gone!
    •   XtraDB, PBXT,
        FederatedX, (M)Aria
What’s in MariaDB 5.1
•   Percona XtraDB           •   See InnoDB & XtraDB
    (ENGINE=InnoDB)              Architecture &
                                 Performance
    •   enhanced InnoDB          Optimization slides from
                                 Peter Zaitsev at tutorial
        designed to better
        scale on modern          on Monday
        hardware; backward
        compatible, scale    •   http://
        better on many           www.percona.com/docs/
        cores, use memory        wiki/percona-
        more efficiently          xtradb:start
What’s in MariaDB 5.1
•   PrimeBase PBXT                 •   Write once w/log-based
                                       storage; write data to
    •   Transactional, foreign         DB, without first writing
                                       in transaction log
        keys, ACID, MVCC (read
        w/o locking)
                                   •   http://kb.askmonty.org/v/
    •   Row-level locking during       about-pbxt
        (SELECT FOR) UPDATE
                                   •   Wednesday, 04/13/2011 -
    •   Rollback transactions,         Ballroom D - 10.50am -
                                       Update on the PBXT
        recovery after restart
        very fast (identifies           Storage Engine by Paul
        garbage making undo            McCullagh
        unnecessary)
What’s in MariaDB 5.1
•   Extended statistics for slow query log       •   Query highly normalised data,
                                                     it is sometimes possible to
    •   based on microslow from                      resolve a query without
        Percona http://kb.askmonty.org/              accessing some tables the
        v/slow-query-log-extended-                   query refers to e.g. http://
        statistics                                   kb.askmonty.org/v/what-is-
                                                     table-elimination
•   PROCESSLIST with microsecond
    precision                                •   Pool of threads (MySQL 6
                                                 backport)
    •   TIME_MS in
        INFORMATION_SCHEMA.PR                    •   Use a limited set of threads to
        OCESSLIST http://                            handle all queries vs one-
        kb.askmonty.org/v/time_ms-                   thread-per-connection http://
        column-in-                                   kb.askmonty.org/v/pool-of-
        information_schemaprocesslist                threads

•   Table elimination
What’s in MariaDB 5.2
•   Released November 2010                       •    Use socket_peercred - if already
                                                      logged in via Unix credentials,
•   MariaDB 5.2.5 (MariaDB 5.1.55 -                   MariaDB will trust it
    changes up to MySQL 5.1.55)
                                                 •    http://kb.askmonty.org/v/
•   Pluggable authentication                          development-pluggable-
                                                      authentication
    •   authentication of users handled by
        plugins                              •   User Statistics (userstatsv2)

    •   mysql_native_password (20 byte)          •    Percona, Google, Weldon Whipple.
        and mysql_old_password (8 byte)               Understand server activity better,
        included by default                           identify database loads http://
                                                      kb.askmonty.org/v/user-statistics
    •   CREATE USER foo IDENTIFIED VIA
        mysql_native_password USING
        ‘pass’; == CREATE user foo
        IDENTIFIED BY PASSWORD
        ‘pass’;
What’s in MariaDB 5.2
•   Virtual columns                         •   New storage engines: OQENGINE,
                                                SphinxSE
    •   PERSISTENT (stored - default)
        & VIRTUAL (generated-only)              •   INFORMATION_SCHEMA.PL
                                                    UGINS now has
    •   http://kb.askmonty.org/v/virtual-           PLUGIN_MATURITY &
                                                    PLUGIN_AUTH_VERSION
        columns
                                                    columns
•   Segmented MyISAM keycache
                                            •   CREATE TABLE can be extended
    •   mitigates thread contention for         via storage engine API
        key cache lock, with notable
        250% performance                        •   Add additional attributes per
        improvements http://                        index, field or table
        kb.askmonty.org/v/segmented-
        key-cache                               •   http://kb.askmonty.org/v/
                                                    extending-create-table
How open is MariaDB?
•   Mailing lists: Launchpad        •   http://launchpad.net/
                                        maria
    •   maria-
        developers@lists.laun   •   Bugs database:
        chpad.net
                                    •   https://
    •   maria-                          bugs.launchpad.net/
        discuss@lists.launchp           maria/
        ad.net
                                •   #maria on FreeNode
•   Code hosting:                   IRC
    Launchpad
Worklog
•   Funding (bounties)

•   Votes

•   http://askmonty.org/
    worklog/
Knowledgebase
• http://kb.askmonty.org/
Deployments,
   deployments, deployments
“MariaDB had the same bugs that we ran into with
MySQL. However the big difference was that when
we reported these bugs, they were quickly resolved
within 48 hours!” -- Dreas van Donselaar, Chief
Technology Officer, SpamExperts
B.V. after migrating over 300 servers from MySQL
5.0 to MariaDB 5.1.          “Migrating from MySQL 5.1 to MariaDB 5.2 was as
                           simple as removing MySQL RPMs and installing
                           the MariaDB packages, then running
                           mysql_upgrade.” - Panayot Belchev, proprietor,
                           Host Bulgaria on providing
                           MariaDB to over 7,000 of their web hosting
                           customers.
Getting MariaDB

•   http://mariadb.org/ is the site + downloads

•   Get it via OpenSUSE build service

•   Its in Gentoo, FreeBSD

•   http://kb.askmonty.org/v/distributions-which-include-
    mariadb
The future?
•   There is no “one” tree               •   Tonnes of optimiser features

    •     MySQL, Percona Performance         •   index condition pushdown,
          Server, MariaDB                        multi-range-read (MRR) table
                                                 access (with keys & row ID
•   GIS                                          sorting), block nested loop for
                                                 outer joins, batched key
•   HandlerSocket                                access, classic hash join,
                                                 numerous subquery
•   Merging takes time                           optimisations (possible
                                                 materialisation for non-
•   New config files?                              correleated subqueries),
                                                 merged derived tables, index
•   Row based replication improvements           merge enhancements

•   Group commit                             •   dynamic columns support
What else do we need?

• InnoDB focus
• Replication focus
• More benchmarks
 • http://kb.askmonty.org/v/benchmarks
• Spreading the good word
Your roadmap
•   (past) What are the new optimiser    •   Dynamic Columns - 3.05pm -
    features and how can I benefit from       13/04/2011 - Ballroom G
    them - Sergey Petrunya - Ballroom
    G - 11.55am - 12/04/2011             •   OQGRAPH Dealing with graphs
                                             and hierarchies in plain SQL -
•   (past) Plugin development tutorial       Antony Curtis - 10.50am
    by Sergei Golubchik                      14/04/2011 - Ballroom D

•   State of MariaDB keynote - Michael   •   A BoF on Wednesday evening to
    Widenius - 9am - 13/04/2011              plan MariaDB future features

•   Group commit and related                 •   http://kb.askmonty.org/v/plans-
    enhancements in the MariaDB                  for-56
    binary log - 2pm - 13/04/2011 -
    Ballroom H
Plugins & Storage
      Engine Summit
• Interested in plugins and storage engines
  for MySQL/MariaDB/Drizzle?
• Be at the summit!
 • April 15 2011, 10am-4pm, The Facebook
    Campus
  • Sign up here: http://kb.askmonty.org/v/
    storage-engine-summit-2011
Booth 411


• Expo Hall
• Auction for a t-shirt (signed) + dinner with
  Monty - proceeds go to Japan
Q&A?
       email: colin@montyprogram.com
http://montyprogram.com/ | http://mariadb.org/
twitter: @bytebot / url: http://bytebot.net/blog/

More Related Content

PDF
MariaDB 10 and what's new with the project
PDF
Why MariaDB?
PDF
MariaDB 10: A MySQL Replacement - HKOSC
PDF
MariaDB: in-depth (hands on training in Seoul)
PDF
MariaDB 10 Tutorial - 13.11.11 - Percona Live London
PDF
MariaDB - a MySQL Replacement #SELF2014
PDF
MariaDB 10: The Complete Tutorial
PDF
MariaDB: The 2012 Edition
MariaDB 10 and what's new with the project
Why MariaDB?
MariaDB 10: A MySQL Replacement - HKOSC
MariaDB: in-depth (hands on training in Seoul)
MariaDB 10 Tutorial - 13.11.11 - Percona Live London
MariaDB - a MySQL Replacement #SELF2014
MariaDB 10: The Complete Tutorial
MariaDB: The 2012 Edition

What's hot (20)

PDF
Meet MariaDB 10.1 at the Bulgaria Web Summit
PDF
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
PDF
MariaDB 10.0 - SkySQL Paris Meetup
PDF
Introduction to MariaDB
PDF
Tuning Linux for your database FLOSSUK 2016
PDF
The Complete MariaDB Server tutorial
PDF
Differences between MariaDB 10.3 & MySQL 8.0
PDF
MariaDB Server & MySQL Security Essentials 2016
PDF
Lessons from database failures
PDF
MariaDB 5.5 and what comes next - Percona Live NYC 2012
PDF
MariaDB: The New M In LAMP - SCALE10x
PDF
The MySQL Server ecosystem in 2016
PDF
The Complete MariaDB Server Tutorial - Percona Live 2015
PDF
MySQL features missing in MariaDB Server
PDF
Databases in the hosted cloud
PDF
My first moments with MongoDB
PDF
Distributions from the view a package
PDF
Better encryption & security with MariaDB 10.1 & MySQL 5.7
PDF
Meet MariaDB Server 10.1 London MySQL meetup December 2015
PDF
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
Meet MariaDB 10.1 at the Bulgaria Web Summit
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.0 - SkySQL Paris Meetup
Introduction to MariaDB
Tuning Linux for your database FLOSSUK 2016
The Complete MariaDB Server tutorial
Differences between MariaDB 10.3 & MySQL 8.0
MariaDB Server & MySQL Security Essentials 2016
Lessons from database failures
MariaDB 5.5 and what comes next - Percona Live NYC 2012
MariaDB: The New M In LAMP - SCALE10x
The MySQL Server ecosystem in 2016
The Complete MariaDB Server Tutorial - Percona Live 2015
MySQL features missing in MariaDB Server
Databases in the hosted cloud
My first moments with MongoDB
Distributions from the view a package
Better encryption & security with MariaDB 10.1 & MySQL 5.7
Meet MariaDB Server 10.1 London MySQL meetup December 2015
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
Ad

Viewers also liked (10)

PDF
MariaDB - Fast, Easy & Strong - Get Started Tutorial
PDF
MariaDB Other Features
PPTX
MySQL Basics
PPT
Mysql tutorial commands_part1
PDF
Sql update statement
PDF
MariaDB Vorstellung
PDF
Chapter 1 Fundamentals of Database Management System
DOCX
Ccna command
PDF
Routing and switching essentials companion guide
PPTX
Presentation mariaDB 10 and fork
MariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB Other Features
MySQL Basics
Mysql tutorial commands_part1
Sql update statement
MariaDB Vorstellung
Chapter 1 Fundamentals of Database Management System
Ccna command
Routing and switching essentials companion guide
Presentation mariaDB 10 and fork
Ad

Similar to A beginners guide to MariaDB (20)

PDF
MariaDB 初学者指南
PDF
Maria db 10 and the mariadb foundation(colin)
PDF
Open11 maria db the new m in lamp
PDF
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
PDF
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
PDF
The MySQL Server ecosystem in 2016
PDF
OSDC 2017 | Lessons from database failures by Colin Charles
PDF
The MySQL ecosystem - understanding it, not running away from it!
PDF
MySQL Ecosystem in 2020
PDF
The MySQL Server Ecosystem in 2016
PDF
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
PDF
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
PPT
Maria db the new mysql (Colin Charles)
PDF
Best practices for MySQL High Availability Tutorial
PDF
Lessons from database failures
PDF
My sql roadmap 2008 2009
PDF
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
PPT
ActiveMQ 5.9.x new features
PDF
MariaDB Server Compatibility with MySQL
PDF
Mariadb10 和新项目中有什么
MariaDB 初学者指南
Maria db 10 and the mariadb foundation(colin)
Open11 maria db the new m in lamp
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
The MySQL Server ecosystem in 2016
OSDC 2017 | Lessons from database failures by Colin Charles
The MySQL ecosystem - understanding it, not running away from it!
MySQL Ecosystem in 2020
The MySQL Server Ecosystem in 2016
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
Maria db the new mysql (Colin Charles)
Best practices for MySQL High Availability Tutorial
Lessons from database failures
My sql roadmap 2008 2009
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
ActiveMQ 5.9.x new features
MariaDB Server Compatibility with MySQL
Mariadb10 和新项目中有什么

More from Colin Charles (11)

PDF
What is MariaDB Server 10.3?
PDF
Databases in the hosted cloud
PDF
Databases in the Hosted Cloud
PDF
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
PDF
Capacity planning for your data stores
PDF
Lessons from {distributed,remote,virtual} communities and companies
PDF
Forking Successfully - or is a branch better?
PDF
Securing your MySQL / MariaDB Server data
PDF
Best practices for MySQL/MariaDB Server/Percona Server High Availability
PDF
Lessons from database failures
PDF
Cool MariaDB Plugins
What is MariaDB Server 10.3?
Databases in the hosted cloud
Databases in the Hosted Cloud
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Capacity planning for your data stores
Lessons from {distributed,remote,virtual} communities and companies
Forking Successfully - or is a branch better?
Securing your MySQL / MariaDB Server data
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Lessons from database failures
Cool MariaDB Plugins

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Cloud computing and distributed systems.
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Empathic Computing: Creating Shared Understanding
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Encapsulation_ Review paper, used for researhc scholars
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Approach and Philosophy of On baking technology
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Machine learning based COVID-19 study performance prediction
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
cuic standard and advanced reporting.pdf
PDF
Electronic commerce courselecture one. Pdf
PPTX
Big Data Technologies - Introduction.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Cloud computing and distributed systems.
Mobile App Security Testing_ A Comprehensive Guide.pdf
Empathic Computing: Creating Shared Understanding
The AUB Centre for AI in Media Proposal.docx
Encapsulation_ Review paper, used for researhc scholars
MYSQL Presentation for SQL database connectivity
Approach and Philosophy of On baking technology
Diabetes mellitus diagnosis method based random forest with bat algorithm
MIND Revenue Release Quarter 2 2025 Press Release
Understanding_Digital_Forensics_Presentation.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
Machine learning based COVID-19 study performance prediction
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
cuic standard and advanced reporting.pdf
Electronic commerce courselecture one. Pdf
Big Data Technologies - Introduction.pptx

A beginners guide to MariaDB

  • 1. A Beginner’s Guide to MariaDB Colin Charles, Monty Program Ab colin@montyprogram.com http://montyprogram.com / http://mariadb.org/ http://bytebot.net/blog / @bytebot on Twitter O’Reilly MySQL Conference & Expo - 12 April 2011
  • 2. Aims • Give you an update of what we’ve done in the past year (plus since project inception) • Discuss the broader MySQL ecosystem
  • 3. What is it? • A branch of MySQL with more features? • A branch of MySQL with better features? • A fork?
  • 4. MariaDB is... • Community Developed • Feature Enhanced • Backward Compatible
  • 5. Who’s behind it? • MySQL (database) owned by MySQL AB (company) • Monty Program is just a sponsor of MariaDB • MariaDB: Open Database Alliance, Percona, PrimeBase, Open Query, etc.
  • 6. When did this begin? • Sun buys MySQL AB in January 2008 • Oracle proposes acquisition of Sun Microsystems in April 2009 • Monty decides that beyond the engine (Febuary 2009), focus on MariaDB, a complete database solution
  • 7. Why MariaDB? • MySQL - an open source product or project? • MariaDB is an open source project
  • 8. Aims of MariaDB • 100% compatible, drop-in replacement to MySQL • Stable (bug-free) releases • GPLv2
  • 9. Compatibility with MySQL • There is no NDB cluster • Tools are similar (some storage engine additional tools for Aria, PBXT) • Client libraries, client- server protocol, SQL • XtraDB enabled by default; dialect, replication master- InnoDB and InnoDB plugin slave all similar are included, but not enabled by default • Data files are supported as long as its similar between • http://kb.askmonty.org/v/ versions mariadb-versus-mysql- compatibility
  • 10. What’s in MariaDB 5.1 • Released February 2010 • Croatian collations • Create external • Numerous bug fixes buildsystem using Buildbot + VMs for test • Test cases and coverage +builds improvements • Release filled with • Removal of mutexes storage engines • Compiler warnings gone! • XtraDB, PBXT, FederatedX, (M)Aria
  • 11. What’s in MariaDB 5.1 • Percona XtraDB • See InnoDB & XtraDB (ENGINE=InnoDB) Architecture & Performance • enhanced InnoDB Optimization slides from Peter Zaitsev at tutorial designed to better scale on modern on Monday hardware; backward compatible, scale • http:// better on many www.percona.com/docs/ cores, use memory wiki/percona- more efficiently xtradb:start
  • 12. What’s in MariaDB 5.1 • PrimeBase PBXT • Write once w/log-based storage; write data to • Transactional, foreign DB, without first writing in transaction log keys, ACID, MVCC (read w/o locking) • http://kb.askmonty.org/v/ • Row-level locking during about-pbxt (SELECT FOR) UPDATE • Wednesday, 04/13/2011 - • Rollback transactions, Ballroom D - 10.50am - Update on the PBXT recovery after restart very fast (identifies Storage Engine by Paul garbage making undo McCullagh unnecessary)
  • 13. What’s in MariaDB 5.1 • Extended statistics for slow query log • Query highly normalised data, it is sometimes possible to • based on microslow from resolve a query without Percona http://kb.askmonty.org/ accessing some tables the v/slow-query-log-extended- query refers to e.g. http:// statistics kb.askmonty.org/v/what-is- table-elimination • PROCESSLIST with microsecond precision • Pool of threads (MySQL 6 backport) • TIME_MS in INFORMATION_SCHEMA.PR • Use a limited set of threads to OCESSLIST http:// handle all queries vs one- kb.askmonty.org/v/time_ms- thread-per-connection http:// column-in- kb.askmonty.org/v/pool-of- information_schemaprocesslist threads • Table elimination
  • 14. What’s in MariaDB 5.2 • Released November 2010 • Use socket_peercred - if already logged in via Unix credentials, • MariaDB 5.2.5 (MariaDB 5.1.55 - MariaDB will trust it changes up to MySQL 5.1.55) • http://kb.askmonty.org/v/ • Pluggable authentication development-pluggable- authentication • authentication of users handled by plugins • User Statistics (userstatsv2) • mysql_native_password (20 byte) • Percona, Google, Weldon Whipple. and mysql_old_password (8 byte) Understand server activity better, included by default identify database loads http:// kb.askmonty.org/v/user-statistics • CREATE USER foo IDENTIFIED VIA mysql_native_password USING ‘pass’; == CREATE user foo IDENTIFIED BY PASSWORD ‘pass’;
  • 15. What’s in MariaDB 5.2 • Virtual columns • New storage engines: OQENGINE, SphinxSE • PERSISTENT (stored - default) & VIRTUAL (generated-only) • INFORMATION_SCHEMA.PL UGINS now has • http://kb.askmonty.org/v/virtual- PLUGIN_MATURITY & PLUGIN_AUTH_VERSION columns columns • Segmented MyISAM keycache • CREATE TABLE can be extended • mitigates thread contention for via storage engine API key cache lock, with notable 250% performance • Add additional attributes per improvements http:// index, field or table kb.askmonty.org/v/segmented- key-cache • http://kb.askmonty.org/v/ extending-create-table
  • 16. How open is MariaDB? • Mailing lists: Launchpad • http://launchpad.net/ maria • maria- developers@lists.laun • Bugs database: chpad.net • https:// • maria- bugs.launchpad.net/ discuss@lists.launchp maria/ ad.net • #maria on FreeNode • Code hosting: IRC Launchpad
  • 17. Worklog • Funding (bounties) • Votes • http://askmonty.org/ worklog/
  • 19. Deployments, deployments, deployments “MariaDB had the same bugs that we ran into with MySQL. However the big difference was that when we reported these bugs, they were quickly resolved within 48 hours!” -- Dreas van Donselaar, Chief Technology Officer, SpamExperts B.V. after migrating over 300 servers from MySQL 5.0 to MariaDB 5.1. “Migrating from MySQL 5.1 to MariaDB 5.2 was as simple as removing MySQL RPMs and installing the MariaDB packages, then running mysql_upgrade.” - Panayot Belchev, proprietor, Host Bulgaria on providing MariaDB to over 7,000 of their web hosting customers.
  • 20. Getting MariaDB • http://mariadb.org/ is the site + downloads • Get it via OpenSUSE build service • Its in Gentoo, FreeBSD • http://kb.askmonty.org/v/distributions-which-include- mariadb
  • 21. The future? • There is no “one” tree • Tonnes of optimiser features • MySQL, Percona Performance • index condition pushdown, Server, MariaDB multi-range-read (MRR) table access (with keys & row ID • GIS sorting), block nested loop for outer joins, batched key • HandlerSocket access, classic hash join, numerous subquery • Merging takes time optimisations (possible materialisation for non- • New config files? correleated subqueries), merged derived tables, index • Row based replication improvements merge enhancements • Group commit • dynamic columns support
  • 22. What else do we need? • InnoDB focus • Replication focus • More benchmarks • http://kb.askmonty.org/v/benchmarks • Spreading the good word
  • 23. Your roadmap • (past) What are the new optimiser • Dynamic Columns - 3.05pm - features and how can I benefit from 13/04/2011 - Ballroom G them - Sergey Petrunya - Ballroom G - 11.55am - 12/04/2011 • OQGRAPH Dealing with graphs and hierarchies in plain SQL - • (past) Plugin development tutorial Antony Curtis - 10.50am by Sergei Golubchik 14/04/2011 - Ballroom D • State of MariaDB keynote - Michael • A BoF on Wednesday evening to Widenius - 9am - 13/04/2011 plan MariaDB future features • Group commit and related • http://kb.askmonty.org/v/plans- enhancements in the MariaDB for-56 binary log - 2pm - 13/04/2011 - Ballroom H
  • 24. Plugins & Storage Engine Summit • Interested in plugins and storage engines for MySQL/MariaDB/Drizzle? • Be at the summit! • April 15 2011, 10am-4pm, The Facebook Campus • Sign up here: http://kb.askmonty.org/v/ storage-engine-summit-2011
  • 25. Booth 411 • Expo Hall • Auction for a t-shirt (signed) + dinner with Monty - proceeds go to Japan
  • 26. Q&A? email: colin@montyprogram.com http://montyprogram.com/ | http://mariadb.org/ twitter: @bytebot / url: http://bytebot.net/blog/