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

What's hot (20)

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

Viewers also liked (10)

PDF
MariaDB - Fast, Easy & Strong - Get Started Tutorial
phamhphuc
 
PDF
MariaDB Other Features
JongJin Lee
 
PPTX
MySQL Basics
mysql content
 
PPT
Mysql tutorial commands_part1
prashob7
 
PDF
Sql update statement
Vivek Singh
 
PDF
MariaDB Vorstellung
MariaDB plc
 
PDF
Chapter 1 Fundamentals of Database Management System
Eddyzulham Mahluzydde
 
DOCX
Ccna command
Siddhartha Rajbhatt
 
PDF
Routing and switching essentials companion guide
Siddhartha Rajbhatt
 
PPTX
Presentation mariaDB 10 and fork
LEQUOY Aurélien
 
MariaDB - Fast, Easy & Strong - Get Started Tutorial
phamhphuc
 
MariaDB Other Features
JongJin Lee
 
MySQL Basics
mysql content
 
Mysql tutorial commands_part1
prashob7
 
Sql update statement
Vivek Singh
 
MariaDB Vorstellung
MariaDB plc
 
Chapter 1 Fundamentals of Database Management System
Eddyzulham Mahluzydde
 
Ccna command
Siddhartha Rajbhatt
 
Routing and switching essentials companion guide
Siddhartha Rajbhatt
 
Presentation mariaDB 10 and fork
LEQUOY Aurélien
 
Ad

Similar to A beginners guide to MariaDB (20)

PDF
MariaDB 初学者指南
YUCHENG HU
 
PDF
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
Insight Technology, Inc.
 
PDF
Open11 maria db the new m in lamp
Colin Charles
 
PPT
Maria db the new mysql (Colin Charles)
Ontico
 
PDF
Maria db 10 and the mariadb foundation(colin)
kayokogoto
 
PDF
[B14] A MySQL Replacement by Colin Charles
Insight Technology, Inc.
 
PDF
The MySQL Diaspora
YUCHENG HU
 
PDF
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
Insight Technology, Inc.
 
PDF
What is MariaDB Server 10.3?
Colin Charles
 
PDF
Introduction of MariaDB 2017 09
GOTO Satoru
 
PDF
Les fonctionnalites mariadb
lemugfr
 
PPTX
Maria DBMS
Ramez Al-Fayez
 
PDF
The MySQL Server ecosystem in 2016
sys army
 
PDF
MariaDB for the Enterprise
All Things Open
 
PDF
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
Alkin Tezuysal
 
PDF
MySQL Storage Engines Landscape
Colin Charles
 
PDF
MariaDB for Developers and Operators (DevOps)
Colin Charles
 
PDF
UKOUG 2011: MySQL Architectures for Oracle DBA's
FromDual GmbH
 
PDF
iloug2015.Mysql.for.oracle.dba.V2
Baruch Osoveskiy
 
PDF
Collaborate 2012 - Administering MySQL for Oracle DBAs
Nelson Calero
 
MariaDB 初学者指南
YUCHENG HU
 
A26 MariaDB : The New&Implemented MySQL Branch by Colin Charles
Insight Technology, Inc.
 
Open11 maria db the new m in lamp
Colin Charles
 
Maria db the new mysql (Colin Charles)
Ontico
 
Maria db 10 and the mariadb foundation(colin)
kayokogoto
 
[B14] A MySQL Replacement by Colin Charles
Insight Technology, Inc.
 
The MySQL Diaspora
YUCHENG HU
 
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
Insight Technology, Inc.
 
What is MariaDB Server 10.3?
Colin Charles
 
Introduction of MariaDB 2017 09
GOTO Satoru
 
Les fonctionnalites mariadb
lemugfr
 
Maria DBMS
Ramez Al-Fayez
 
The MySQL Server ecosystem in 2016
sys army
 
MariaDB for the Enterprise
All Things Open
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
Alkin Tezuysal
 
MySQL Storage Engines Landscape
Colin Charles
 
MariaDB for Developers and Operators (DevOps)
Colin Charles
 
UKOUG 2011: MySQL Architectures for Oracle DBA's
FromDual GmbH
 
iloug2015.Mysql.for.oracle.dba.V2
Baruch Osoveskiy
 
Collaborate 2012 - Administering MySQL for Oracle DBAs
Nelson Calero
 
Ad

More from Colin Charles (16)

PDF
Databases in the hosted cloud
Colin Charles
 
PDF
The MySQL ecosystem - understanding it, not running away from it!
Colin Charles
 
PDF
Databases in the Hosted Cloud
Colin Charles
 
PDF
Best practices for MySQL High Availability Tutorial
Colin Charles
 
PDF
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Colin Charles
 
PDF
Capacity planning for your data stores
Colin Charles
 
PDF
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
Colin Charles
 
PDF
Lessons from {distributed,remote,virtual} communities and companies
Colin Charles
 
PDF
Forking Successfully - or is a branch better?
Colin Charles
 
PDF
MariaDB Server Compatibility with MySQL
Colin Charles
 
PDF
Securing your MySQL / MariaDB Server data
Colin Charles
 
PDF
The MySQL Server Ecosystem in 2016
Colin Charles
 
PDF
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Colin Charles
 
PDF
Lessons from database failures
Colin Charles
 
PDF
Lessons from database failures
Colin Charles
 
PDF
Cool MariaDB Plugins
Colin Charles
 
Databases in the hosted cloud
Colin Charles
 
The MySQL ecosystem - understanding it, not running away from it!
Colin Charles
 
Databases in the Hosted Cloud
Colin Charles
 
Best practices for MySQL High Availability Tutorial
Colin Charles
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Colin Charles
 
Capacity planning for your data stores
Colin Charles
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
Colin Charles
 
Lessons from {distributed,remote,virtual} communities and companies
Colin Charles
 
Forking Successfully - or is a branch better?
Colin Charles
 
MariaDB Server Compatibility with MySQL
Colin Charles
 
Securing your MySQL / MariaDB Server data
Colin Charles
 
The MySQL Server Ecosystem in 2016
Colin Charles
 
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Colin Charles
 
Lessons from database failures
Colin Charles
 
Lessons from database failures
Colin Charles
 
Cool MariaDB Plugins
Colin Charles
 

Recently uploaded (20)

PDF
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
PPTX
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
PDF
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
PPTX
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
PPTX
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
PDF
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
PDF
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
PDF
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
Edge AI and Vision Alliance
 
PDF
Kubernetes - Architecture & Components.pdf
geethak285
 
PDF
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
PPTX
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
PDF
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
PPTX
Practical Applications of AI in Local Government
OnBoard
 
PDF
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
PDF
Dev Dives: Accelerating agentic automation with Autopilot for Everyone
UiPathCommunity
 
PPTX
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
PDF
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
PPTX
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
PDF
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 
Enhancing Environmental Monitoring with Real-Time Data Integration: Leveragin...
Safe Software
 
Paycifi - Programmable Trust_Breakfast_PPTXT
FinTech Belgium
 
Supporting the NextGen 911 Digital Transformation with FME
Safe Software
 
2025 HackRedCon Cyber Career Paths.pptx Scott Stanton
Scott Stanton
 
Mastering Authorization: Integrating Authentication and Authorization Data in...
Hitachi, Ltd. OSS Solution Center.
 
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
WSO2
 
Darley - FIRST Copenhagen Lightning Talk (2025-06-26) Epochalypse 2038 - Time...
treyka
 
“A Re-imagination of Embedded Vision System Design,” a Presentation from Imag...
Edge AI and Vision Alliance
 
Kubernetes - Architecture & Components.pdf
geethak285
 
ICONIQ State of AI Report 2025 - The Builder's Playbook
Razin Mustafiz
 
MARTSIA: A Tool for Confidential Data Exchange via Public Blockchain - Pitch ...
Michele Kryston
 
TrustArc Webinar - Navigating APAC Data Privacy Laws: Compliance & Challenges
TrustArc
 
Practical Applications of AI in Local Government
OnBoard
 
Bitkom eIDAS Summit | European Business Wallet: Use Cases, Macroeconomics, an...
Carsten Stoecker
 
Dev Dives: Accelerating agentic automation with Autopilot for Everyone
UiPathCommunity
 
Smarter Governance with AI: What Every Board Needs to Know
OnBoard
 
Java 25 and Beyond - A Roadmap of Innovations
Ana-Maria Mihalceanu
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Smart Factory Monitoring IIoT in Machine and Production Operations.pptx
Rejig Digital
 
Hyderabad MuleSoft In-Person Meetup (June 21, 2025) Slides
Ravi Tamada
 

A beginners guide to MariaDB

  • 1. A Beginner’s Guide to MariaDB Colin Charles, Monty Program Ab [email protected] 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- [email protected] • Bugs database: chpad.net • https:// • maria- bugs.launchpad.net/ [email protected] 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: [email protected] http://montyprogram.com/ | http://mariadb.org/ twitter: @bytebot / url: http://bytebot.net/blog/