SlideShare a Scribd company logo
1 of 27
Compatibility with
MySQL
Colin Charles, byte@aeon.com.my on the lists/jira / bytee on IRC
#maria / @bytebot on Twitter / byte on github / http://
www.bytebot.net/blog/
MariaDB Server Developer’s meeting 2016, Amsterdam, Netherlands
8 October 2016
whoami
• Chief Evangelist (in the CTO office), Percona Inc
• Founding team of MariaDB Server (2009-2016), previously
at Monty Program Ab, merged with SkySQL Ab, now
MariaDB Corporation
• Formerly MySQL AB (exit: Sun Microsystems)
• Past lives include Fedora Project (FESCO), OpenOffice.org
• MySQL Community Contributor of the Year Award winner
2014
The “MariaDB” Code of
Conduct
• All MariaDB contributors are expected to follow the Ubuntu Code Of
Conduct.
• Ubuntu is about showing humanity to one another: the word itself
captures the spirit of being human.
• Be considerate. Be respectful. Take responsibility for our words and
actions. Be collaborative. Value decisiveness, clarity and
consensus. Ask for help when unsure. Step down considerately.
• Open meritocracy. Teamwork. Credit. We value discussion, data and
decisiveness. Courage and considerateness. Conflicts of interest.
• “People within a corporation become its face” - Shahid Kamal,
gaming entrepreneur, @shahidkamal
Define: compatibility (OED)
• A state in which two things are able to exist or
occur together without problems or conflict.
Commitments
• Verbal: MySQL 5.6, should be comparable to
MariaDB Server 10.1. And for 10.2 it should be
compatible with MySQL 5.7 — Monty, yesterday (7
October 2016)
• mariadb.org/about/: It is an enhanced, drop-in
replacement for MySQL.
From the KB
• https://mariadb.com/kb/en/mariadb/mariadb-vs-mysql-compatibility/
• Tracker for documentation of above page: https://jira.mariadb.org/browse/
MDEV-10392
• https://mariadb.com/kb/en/mariadb/system-variable-differences-between-
mariadb-and-mysql/
5.7 JSON
• https://jira.mariadb.org/browse/MDEV-9056 - target
10.2, not in the current beta release
• what about mysqlsh? (the MySQL Shell)
InnoDB tablespace
encryption
• MariaDB Server: table or tablespace encryption, fully encrypted logs
• MySQL: tablespace encryption, innodb_file_per_table, logs
unencrypted
• Do we aim for compatibility or make it clear that it won’t be (saying
“implemented differently” doesn’t imply incompatibility!)
• Polishing encryption?
• Galera’s gcache? Logs? (https://jira.mariadb.org/browse/
MDEV-9639)
• mysqlbinlog reading encrypted logs? https://jira.mariadb.org/
browse/MDEV-8813
CJK language support
• Add “ngram” support to MariaDB Server: https://
jira.mariadb.org/browse/MDEV-10267
• Add “MeCab” support to MariaDB Server: https://
jira.mariadb.org/browse/MDEV-10268
• InnoDB 5.7 is now merged, there is no 10.2 target
on the above two issues
• gb18030 support: https://jira.mariadb.org/browse/
MDEV-7495
Multiple triggers per table
• Pushed, ready for testing in 10.2.3
• https://jira.mariadb.org/browse/MDEV-6112
10.0/5.6
Replication
• How often is replication from 5.6/5.7 tested for 10.1/10.2? (https://
jira.mariadb.org/browse/MDEV-5705)
• What (if any) is the plan to make replication work from 10.2 ->
5.7?
• FR: Allow replication from MySQL 5.6+ when GTID is enabled on
the master - https://jira.mariadb.org/browse/MDEV-4487 (resolved 9
October 2015)
• Multi-source replication is present in 5.7 - is it compatible with 10.2?
• Time delayed replication? https://jira.mariadb.org/browse/
MDEV-7145
PERFORMANCE_SCHEMA
• Off by default, but remember, it can’t be turned on
at runtime…
• sys schema?
• Is it going to get merged? (87 “rows” vs 52)
Bits…
• InnoDB memcached (upstream, not the GSoC
variant)
• sha256_password plugin? https://jira.mariadb.org/
browse/MDEV-9804
• removing mysql_old_password?
• validate_password on by default in 5.7
How did we do from this time, last year?
(Compatibility/convergence/divergence
by Eric Herman)
• GTID has domain ID
(which is an innovation in
MariaDB Server)
• Knowing scenarios where
one can swap, i.e. when
one has a multi-vendor
strategy, so that people
can experimentally try
WebScaleSQL/Percona
Server/etc.
• using innovation may limit
your options, i.e. how to
step away
• if you use out of order
parallel replication in
MariaDB, you can't go
away to somewhere else.
So if you use innovation
and depend on it, this
must be clearly
documented
• Virtual columns +
replication will work
• Need specific
documentation between
master/slave protocol on
how they talk, how they
shouldn't talk. Replication
protocol docs needs
improvement (protocol
specification).
• Goal is to be syntax
compatible
• SHOW EXPLAIN
• Multi-source replication
• Replication filters
• slave parallel thread vs
slave parallel workers
• Maybe write a rewrite
plugin for MySQL 5.7 to
make it more compatible
with MariaDB
• What do we do with
regards to RDS and
Aurora?
• Being compatible to
match other
implementations like
SQLite/PostgreSQL?
When doing development
we do test against
PostgreSQL
• 10.0 needed work on
default_tmp_storage_en
gine (and 10.1 has this).
• To make it easier we need
to ensure that options are
easy for people (DBAs)
whom are doing both
MariaDB and MySQL.
Allow simple as possible
configuration
• Importing from
WebScaleSQL? "We
import all good and
reasonable
stuff" (audience breaks
out into laughter)
• super readonly mode - its
everywhere, so it has to
be in MariaDB Server 10.2
• InnoDB - follow MySQL
InnoDB. When innovation
happens (encryption),
then we need to make it
clear how to go back.
• Goal: default optimizer
changes only happen at
major releases.
• missing: crash slave
replication with current
position
• missing: minimal RBR
• Optimizer trace
Missing!
• SUPER readonly mode - https://jira.mariadb.org/
browse/MDEV-9458
• Optimizer trace - https://jira.mariadb.org/browse/
MDEV-6111
• Add replication crash-safety for non-GTID slave -
https://jira.mariadb.org/browse/MDEV-8946
Needs work
• Minimal RBR - Minimal/NOBLOB Binlog Row Image
replication fails when tables from master have
different PK in slave https://jira.mariadb.org/
browse/MDEV-8398 (docs?)
• Syntax compatibility (explain for connection <id> -
https://jira.mariadb.org/browse/MDEV-10000, etc.)
Installation…
• MySQL: https://dev.mysql.com/downloads/repo/
yum/ - grab a package — e.g. mysql57-
community-release-el7-9.noarch.rpm
• MariaDB Server: https://downloads.mariadb.org/
mariadb/repositories/ - copy/paste, edit a file, then
install
• Percona Server: https://www.percona.com/doc/
percona-server/5.7/installation/yum_repo.html -
yum install Percona-Server-server-57
Starting up
• MySQL / Percona Server
• service mysqld start
• grep 'temporary password' /var/log/mysqld.log
• ALTER USER 'root'@'localhost' IDENTIFIED BY
‘rootmeOK!’;
• MariaDB Server? mysql -uroot “just works”
mysql.user table changes
• MariaDB Server and MySQL differ here (not just by addition of
roles) - mysql.user.password is just
mysql.user.authentication_string (is MariaDB Server removing
password?)
• Password expiry is coming? https://jira.mariadb.org/browse/
MDEV-7597
• Password last changed? Lifetime?
• ACCOUNT LOCK/UNLOCK
• VALIDATE_PASSWORD_STRENGTH() SQL function doesn’t
work in MariaDB Server
More 5.7
• Optimizer hints (and the cost based optimizer itself?) - https://
jira.mariadb.org/browse/MDEV-9078
• RENAME INDEX - https://jira.mariadb.org/browse/MDEV-7318
• Query rewriting? - https://jira.mariadb.org/browse/MDEV-5561
• GIS: GeoJSON functions? Geohash functions?
• SELECT
ST_AsGeoJSON(ST_GeomFromText('POINT(11.11111
12.22222)’),2);
• SELECT ST_GeoHash(180,0,10), ST_GeoHash(-180,-90,15);
Tools
• including new tools like mysql_ssl_rsa_setup ? mysqlpump?
• why will xtrabackup not work with MariaDB Server encryption
or compression? https://jira.mariadb.org/browse/MDEV-10367
• When merging XtraDB, why isn’t it complete, with backup
locks? https://jira.mariadb.org/browse/MDEV-5336
• tools that require MySQL GTID don’t work with MariaDB
Server - ideas? (e.g. mysqlfailover, mysqlrpladmin, MHA, etc.)
• vitess, started life on just MariaDB Server, but note they
support 5.6/5.7 and only 10.0
Contributions?
• SPIDER
• SPIDER works better if its recompiled (doesn’t matter if its
included, it isn’t “feature complete”)
• Open since March 2015. Priority provided since May 2016.
• https://jira.mariadb.org/browse/MDEV-7698
• Are people still using HandlerSocket?
• What needs to get deprecated so focus can happen on other
things?
Open ended…
• How often are the 5.6/5.7 mysqltest’s run on
MariaDB Server?
• How often are upgrades from 5.6/5.7 tested?
Today we already see this…
The future
• MySQL 8 brings roles, CTEs, (soon window
functions), transactional data dictionary,
histograms, SDIs (instead of FRMs), etc.
• http://mysqlserverteam.com/the-mysql-8-0-0-
milestone-release-is-available/
• Will MariaDB Server 10.3 aim to be compatible with
MySQL 8?
MariaDB Server Compatibility with MySQL

More Related Content

What's hot

The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016Colin Charles
 
Distributions from the view a package
Distributions from the view a packageDistributions from the view a package
Distributions from the view a packageColin Charles
 
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB MeetupMariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB MeetupColin Charles
 
MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016Colin Charles
 
Meet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitMeet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitColin Charles
 
MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)Colin Charles
 
Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Colin Charles
 
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityBest practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityColin Charles
 
MariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectMariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectColin Charles
 
Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Colin Charles
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerColin Charles
 
MariaDB 10 Tutorial - 13.11.11 - Percona Live London
MariaDB 10 Tutorial - 13.11.11 - Percona Live LondonMariaDB 10 Tutorial - 13.11.11 - Percona Live London
MariaDB 10 Tutorial - 13.11.11 - Percona Live LondonIvan Zoratti
 
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)Colin Charles
 
Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Colin Charles
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Ontico
 
MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC Colin Charles
 
MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014Colin Charles
 
Better encryption & security with MariaDB 10.1 & MySQL 5.7
Better encryption & security with MariaDB 10.1 & MySQL 5.7Better encryption & security with MariaDB 10.1 & MySQL 5.7
Better encryption & security with MariaDB 10.1 & MySQL 5.7Colin Charles
 

What's hot (20)

The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 
Distributions from the view a package
Distributions from the view a packageDistributions from the view a package
Distributions from the view a package
 
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB MeetupMariaDB 10.1   what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
MariaDB 10.1 what's new and what's coming in 10.2 - Tokyo MariaDB Meetup
 
MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016MariaDB Server & MySQL Security Essentials 2016
MariaDB Server & MySQL Security Essentials 2016
 
Meet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web SummitMeet MariaDB 10.1 at the Bulgaria Web Summit
Meet MariaDB 10.1 at the Bulgaria Web Summit
 
Why MariaDB?
Why MariaDB?Why MariaDB?
Why MariaDB?
 
MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)MariaDB: in-depth (hands on training in Seoul)
MariaDB: in-depth (hands on training in Seoul)
 
Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016Tuning Linux for your database FLOSSUK 2016
Tuning Linux for your database FLOSSUK 2016
 
Best practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High AvailabilityBest practices for MySQL/MariaDB Server/Percona Server High Availability
Best practices for MySQL/MariaDB Server/Percona Server High Availability
 
MariaDB 10 and what's new with the project
MariaDB 10 and what's new with the projectMariaDB 10 and what's new with the project
MariaDB 10 and what's new with the project
 
Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0Differences between MariaDB 10.3 & MySQL 8.0
Differences between MariaDB 10.3 & MySQL 8.0
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
MariaDB 10 Tutorial - 13.11.11 - Percona Live London
MariaDB 10 Tutorial - 13.11.11 - Percona Live LondonMariaDB 10 Tutorial - 13.11.11 - Percona Live London
MariaDB 10 Tutorial - 13.11.11 - Percona Live London
 
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
MariaDB - the "new" MySQL is 5 years old and everywhere (LinuxCon Europe 2015)
 
Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015Meet MariaDB Server 10.1 London MySQL meetup December 2015
Meet MariaDB Server 10.1 London MySQL meetup December 2015
 
Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)Maria db the new mysql (Colin Charles)
Maria db the new mysql (Colin Charles)
 
MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC MariaDB 10: A MySQL Replacement - HKOSC
MariaDB 10: A MySQL Replacement - HKOSC
 
MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014MariaDB - a MySQL Replacement #SELF2014
MariaDB - a MySQL Replacement #SELF2014
 
Better encryption & security with MariaDB 10.1 & MySQL 5.7
Better encryption & security with MariaDB 10.1 & MySQL 5.7Better encryption & security with MariaDB 10.1 & MySQL 5.7
Better encryption & security with MariaDB 10.1 & MySQL 5.7
 

Similar to MariaDB Server Compatibility with MySQL

The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! Colin Charles
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfMySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfAlkin Tezuysal
 
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...Insight Technology, Inc.
 
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...NETWAYS
 
The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015Colin Charles
 
Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)kayokogoto
 
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Corporation
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Codership Oy - Creators of Galera Cluster
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016sys army
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么YUCHENG HU
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016Colin Charles
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020Alkin Tezuysal
 
Best practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability TutorialBest practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability TutorialColin Charles
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterContinuent
 
Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09GOTO Satoru
 
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 CharlesInsight Technology, Inc.
 
A beginners guide to MariaDB
A beginners guide to MariaDBA beginners guide to MariaDB
A beginners guide to MariaDBColin Charles
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreMariaDB Corporation
 
MariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started TutorialMariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started Tutorialphamhphuc
 

Similar to MariaDB Server Compatibility with MySQL (20)

The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it! The MySQL ecosystem - understanding it, not running away from it!
The MySQL ecosystem - understanding it, not running away from it!
 
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdfMySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
MySQL Ecosystem in 2023 - FOSSASIA'23 - Alkin.pptx.pdf
 
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale  by ...
[db tech showcase Tokyo 2014] B15: Scalability with MariaDB and MaxScale by ...
 
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
OSDC 2018 | Scaling & High Availability MySQL learnings from the past decade+...
 
The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015The Complete MariaDB Server Tutorial - Percona Live 2015
The Complete MariaDB Server Tutorial - Percona Live 2015
 
Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)Maria db 10 and the mariadb foundation(colin)
Maria db 10 and the mariadb foundation(colin)
 
MySQL highav Availability
MySQL highav AvailabilityMySQL highav Availability
MySQL highav Availability
 
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
MariaDB Enterprise & MariaDB Enterprise Cluster - MariaDB Webinar July 2014
 
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
Choosing between Codership's MySQL Galera, MariaDB Galera Cluster and Percona...
 
The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016The MySQL Server ecosystem in 2016
The MySQL Server ecosystem in 2016
 
Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么Mariadb10 和新项目中有什么
Mariadb10 和新项目中有什么
 
The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016The MySQL Server Ecosystem in 2016
The MySQL Server Ecosystem in 2016
 
MySQL Ecosystem in 2020
MySQL Ecosystem in 2020MySQL Ecosystem in 2020
MySQL Ecosystem in 2020
 
Best practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability TutorialBest practices for MySQL High Availability Tutorial
Best practices for MySQL High Availability Tutorial
 
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB ClusterWebinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
Webinar Slides: MySQL HA/DR/Geo-Scale - High Noon #5: Oracle’s InnoDB Cluster
 
Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09Introduction of MariaDB 2017 09
Introduction of MariaDB 2017 09
 
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
 
A beginners guide to MariaDB
A beginners guide to MariaDBA beginners guide to MariaDB
A beginners guide to MariaDB
 
The New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and MoreThe New MariaDB Offering: MariaDB 10, MaxScale and More
The New MariaDB Offering: MariaDB 10, MaxScale and More
 
MariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started TutorialMariaDB - Fast, Easy & Strong - Get Started Tutorial
MariaDB - Fast, Easy & Strong - Get Started Tutorial
 

More from Colin Charles

What is MariaDB Server 10.3?
What is MariaDB Server 10.3?What is MariaDB Server 10.3?
What is MariaDB Server 10.3?Colin Charles
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud Colin Charles
 
Databases in the Hosted Cloud
Databases in the Hosted CloudDatabases in the Hosted Cloud
Databases in the Hosted CloudColin Charles
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Colin Charles
 
Capacity planning for your data stores
Capacity planning for your data storesCapacity planning for your data stores
Capacity planning for your data storesColin Charles
 
Lessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companiesLessons from {distributed,remote,virtual} communities and companies
Lessons from {distributed,remote,virtual} communities and companiesColin Charles
 
Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?Forking Successfully - or is a branch better?
Forking Successfully - or is a branch better?Colin Charles
 
Cool MariaDB Plugins
Cool MariaDB Plugins Cool MariaDB Plugins
Cool MariaDB Plugins Colin Charles
 

More from Colin Charles (8)

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

Recently uploaded

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 

Recently uploaded (20)

AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 

MariaDB Server Compatibility with MySQL

  • 1. Compatibility with MySQL Colin Charles, byte@aeon.com.my on the lists/jira / bytee on IRC #maria / @bytebot on Twitter / byte on github / http:// www.bytebot.net/blog/ MariaDB Server Developer’s meeting 2016, Amsterdam, Netherlands 8 October 2016
  • 2. whoami • Chief Evangelist (in the CTO office), Percona Inc • Founding team of MariaDB Server (2009-2016), previously at Monty Program Ab, merged with SkySQL Ab, now MariaDB Corporation • Formerly MySQL AB (exit: Sun Microsystems) • Past lives include Fedora Project (FESCO), OpenOffice.org • MySQL Community Contributor of the Year Award winner 2014
  • 3. The “MariaDB” Code of Conduct • All MariaDB contributors are expected to follow the Ubuntu Code Of Conduct. • Ubuntu is about showing humanity to one another: the word itself captures the spirit of being human. • Be considerate. Be respectful. Take responsibility for our words and actions. Be collaborative. Value decisiveness, clarity and consensus. Ask for help when unsure. Step down considerately. • Open meritocracy. Teamwork. Credit. We value discussion, data and decisiveness. Courage and considerateness. Conflicts of interest. • “People within a corporation become its face” - Shahid Kamal, gaming entrepreneur, @shahidkamal
  • 4. Define: compatibility (OED) • A state in which two things are able to exist or occur together without problems or conflict.
  • 5. Commitments • Verbal: MySQL 5.6, should be comparable to MariaDB Server 10.1. And for 10.2 it should be compatible with MySQL 5.7 — Monty, yesterday (7 October 2016) • mariadb.org/about/: It is an enhanced, drop-in replacement for MySQL.
  • 6. From the KB • https://mariadb.com/kb/en/mariadb/mariadb-vs-mysql-compatibility/ • Tracker for documentation of above page: https://jira.mariadb.org/browse/ MDEV-10392 • https://mariadb.com/kb/en/mariadb/system-variable-differences-between- mariadb-and-mysql/
  • 7. 5.7 JSON • https://jira.mariadb.org/browse/MDEV-9056 - target 10.2, not in the current beta release • what about mysqlsh? (the MySQL Shell)
  • 8. InnoDB tablespace encryption • MariaDB Server: table or tablespace encryption, fully encrypted logs • MySQL: tablespace encryption, innodb_file_per_table, logs unencrypted • Do we aim for compatibility or make it clear that it won’t be (saying “implemented differently” doesn’t imply incompatibility!) • Polishing encryption? • Galera’s gcache? Logs? (https://jira.mariadb.org/browse/ MDEV-9639) • mysqlbinlog reading encrypted logs? https://jira.mariadb.org/ browse/MDEV-8813
  • 9. CJK language support • Add “ngram” support to MariaDB Server: https:// jira.mariadb.org/browse/MDEV-10267 • Add “MeCab” support to MariaDB Server: https:// jira.mariadb.org/browse/MDEV-10268 • InnoDB 5.7 is now merged, there is no 10.2 target on the above two issues • gb18030 support: https://jira.mariadb.org/browse/ MDEV-7495
  • 10. Multiple triggers per table • Pushed, ready for testing in 10.2.3 • https://jira.mariadb.org/browse/MDEV-6112
  • 12. Replication • How often is replication from 5.6/5.7 tested for 10.1/10.2? (https:// jira.mariadb.org/browse/MDEV-5705) • What (if any) is the plan to make replication work from 10.2 -> 5.7? • FR: Allow replication from MySQL 5.6+ when GTID is enabled on the master - https://jira.mariadb.org/browse/MDEV-4487 (resolved 9 October 2015) • Multi-source replication is present in 5.7 - is it compatible with 10.2? • Time delayed replication? https://jira.mariadb.org/browse/ MDEV-7145
  • 13. PERFORMANCE_SCHEMA • Off by default, but remember, it can’t be turned on at runtime… • sys schema? • Is it going to get merged? (87 “rows” vs 52)
  • 14. Bits… • InnoDB memcached (upstream, not the GSoC variant) • sha256_password plugin? https://jira.mariadb.org/ browse/MDEV-9804 • removing mysql_old_password? • validate_password on by default in 5.7
  • 15. How did we do from this time, last year? (Compatibility/convergence/divergence by Eric Herman) • GTID has domain ID (which is an innovation in MariaDB Server) • Knowing scenarios where one can swap, i.e. when one has a multi-vendor strategy, so that people can experimentally try WebScaleSQL/Percona Server/etc. • using innovation may limit your options, i.e. how to step away • if you use out of order parallel replication in MariaDB, you can't go away to somewhere else. So if you use innovation and depend on it, this must be clearly documented • Virtual columns + replication will work • Need specific documentation between master/slave protocol on how they talk, how they shouldn't talk. Replication protocol docs needs improvement (protocol specification). • Goal is to be syntax compatible • SHOW EXPLAIN • Multi-source replication • Replication filters • slave parallel thread vs slave parallel workers • Maybe write a rewrite plugin for MySQL 5.7 to make it more compatible with MariaDB • What do we do with regards to RDS and Aurora? • Being compatible to match other implementations like SQLite/PostgreSQL? When doing development we do test against PostgreSQL • 10.0 needed work on default_tmp_storage_en gine (and 10.1 has this). • To make it easier we need to ensure that options are easy for people (DBAs) whom are doing both MariaDB and MySQL. Allow simple as possible configuration • Importing from WebScaleSQL? "We import all good and reasonable stuff" (audience breaks out into laughter) • super readonly mode - its everywhere, so it has to be in MariaDB Server 10.2 • InnoDB - follow MySQL InnoDB. When innovation happens (encryption), then we need to make it clear how to go back. • Goal: default optimizer changes only happen at major releases. • missing: crash slave replication with current position • missing: minimal RBR • Optimizer trace
  • 16. Missing! • SUPER readonly mode - https://jira.mariadb.org/ browse/MDEV-9458 • Optimizer trace - https://jira.mariadb.org/browse/ MDEV-6111 • Add replication crash-safety for non-GTID slave - https://jira.mariadb.org/browse/MDEV-8946
  • 17. Needs work • Minimal RBR - Minimal/NOBLOB Binlog Row Image replication fails when tables from master have different PK in slave https://jira.mariadb.org/ browse/MDEV-8398 (docs?) • Syntax compatibility (explain for connection <id> - https://jira.mariadb.org/browse/MDEV-10000, etc.)
  • 18. Installation… • MySQL: https://dev.mysql.com/downloads/repo/ yum/ - grab a package — e.g. mysql57- community-release-el7-9.noarch.rpm • MariaDB Server: https://downloads.mariadb.org/ mariadb/repositories/ - copy/paste, edit a file, then install • Percona Server: https://www.percona.com/doc/ percona-server/5.7/installation/yum_repo.html - yum install Percona-Server-server-57
  • 19. Starting up • MySQL / Percona Server • service mysqld start • grep 'temporary password' /var/log/mysqld.log • ALTER USER 'root'@'localhost' IDENTIFIED BY ‘rootmeOK!’; • MariaDB Server? mysql -uroot “just works”
  • 20. mysql.user table changes • MariaDB Server and MySQL differ here (not just by addition of roles) - mysql.user.password is just mysql.user.authentication_string (is MariaDB Server removing password?) • Password expiry is coming? https://jira.mariadb.org/browse/ MDEV-7597 • Password last changed? Lifetime? • ACCOUNT LOCK/UNLOCK • VALIDATE_PASSWORD_STRENGTH() SQL function doesn’t work in MariaDB Server
  • 21. More 5.7 • Optimizer hints (and the cost based optimizer itself?) - https:// jira.mariadb.org/browse/MDEV-9078 • RENAME INDEX - https://jira.mariadb.org/browse/MDEV-7318 • Query rewriting? - https://jira.mariadb.org/browse/MDEV-5561 • GIS: GeoJSON functions? Geohash functions? • SELECT ST_AsGeoJSON(ST_GeomFromText('POINT(11.11111 12.22222)’),2); • SELECT ST_GeoHash(180,0,10), ST_GeoHash(-180,-90,15);
  • 22. Tools • including new tools like mysql_ssl_rsa_setup ? mysqlpump? • why will xtrabackup not work with MariaDB Server encryption or compression? https://jira.mariadb.org/browse/MDEV-10367 • When merging XtraDB, why isn’t it complete, with backup locks? https://jira.mariadb.org/browse/MDEV-5336 • tools that require MySQL GTID don’t work with MariaDB Server - ideas? (e.g. mysqlfailover, mysqlrpladmin, MHA, etc.) • vitess, started life on just MariaDB Server, but note they support 5.6/5.7 and only 10.0
  • 23. Contributions? • SPIDER • SPIDER works better if its recompiled (doesn’t matter if its included, it isn’t “feature complete”) • Open since March 2015. Priority provided since May 2016. • https://jira.mariadb.org/browse/MDEV-7698 • Are people still using HandlerSocket? • What needs to get deprecated so focus can happen on other things?
  • 24. Open ended… • How often are the 5.6/5.7 mysqltest’s run on MariaDB Server? • How often are upgrades from 5.6/5.7 tested?
  • 25. Today we already see this…
  • 26. The future • MySQL 8 brings roles, CTEs, (soon window functions), transactional data dictionary, histograms, SDIs (instead of FRMs), etc. • http://mysqlserverteam.com/the-mysql-8-0-0- milestone-release-is-available/ • Will MariaDB Server 10.3 aim to be compatible with MySQL 8?