[debian-mysql] percona vs. mariadb

Clint Byrum spamaps at debian.org
Thu Mar 14 22:00:12 UTC 2013


Excerpts from Otto Kekäläinen's message of 2013-03-13 15:41:20 -0700:
> Hello,
> 
> 2013/3/7 Bjoern Boschman <bjoern at boschman.de>:
> >> We should just ship the same major.minor release of all of them if
> >> they're going to share /etc/mysql/my.cnf.
> >>
> >> I'd prefer, though, that they didn't if at all possible. If they must,
> >> this probably means having them conflict and provide so that incompatible
> >> options don't cause issues.
> >>
> >
> > I totally aggree that different sql-server branches must not share those
> > data!
> 
> At least at the moment when MariaDB and MySQL are binary-compatible,
> they should share the same data. That makes it easy for admins to
> switch servers. Compare the situation to packages nginx-light and
> nginx-full: same conf files, but different binaries and conflicts each
> other, so both binaries can't be installed at once.
> 

Easy is not the goal. Simple, resilient, reliable. Not easy.

/var/lib/mysql for mysql. /var/lib/mariadb for mariadb. If an admin
wants to migrate between the two, I suggest they think that through
*very* clearly and use the method that makes the most sense for them
(symlinks.. bind mounts, manual mv'ing files/dirs).

The package is there to deliver a working DB, not to solve all system
admin tasks.

> At some point in the future, if they really diverge from each other,
> they could adapt separate configs (compare how httd providers Apache
> and Nginx are packaged in Debian). But I think these kind of diverges
> are initiated in the upstream project, and not designed nor maintained
> by downstream packagers.
> 

IMO they must use separate configs now.

> Now to the question, how many MySQL variants could Debian ship? I
> don't know, but I assume that Debian should at least have MySQL plus
> some other that users can migrate to in case Oracle goes evil. More is
> of course better, but only it there are resources.
> 

You're suggesting the way Oracle is abusing MySQL's community isn't evil?

Ignoring test cases and re-inventing fixes to known bugs just for the
sake of pretending like you can have a non-full-disclosure open source
database is pretty evil already.

> Well if there are resources for only one new option? Which one should
> the other be, MariaDB, Percona or something else? Logically the one
> which has most packaging resources and maintainers backing it should
> be selected. At the moment I am trying to package MariaDB (I'll post
> another message on that later) and I noticed that Kristian Nielsen,
> who is a MariaDB developer, has at least subscribed to this list and
> talked on the debian-mysql IRC channel, so there is a direct
> connection to the upstream project. I found Kristian's e-mail while
> looking in the MariaDB repos on who commited their debian/ and when I
> needed some help understanding the compile options etc, Kristian was
> kind to respond and he has contributed to my packaging effort. The
> packaging done at MariaDB was a bit outdated, not using quilt, stuck
> in debhelper version 1 etc but now when I've helped catch up to modern
> standards there is no reason why upstream MariaDB wouldn't be
> interested in staying up-to-date in regards to Debian packaging.
> 

There are plenty of reasons. Having people download from their apt repo
means not having to deal with all the Debian policy and politics, and
being able to count how many users download their packages.

In fact, the reasons to be in are mostly reasons that we, Debian's
developers, care about. Upstream's are mostly "meh" these days.

> Is MariaDB technically the superior option? I don't know. Personally I
> have only experience of plain MySQL and plain MariaDB. I might try the
> MariaDB cluster in a project later this year, but I don't have any
> experience of e.g. Percona at all, so I am not qualified to say much
> about it, but a quick googling shows mixed benchmark results.
> 

I recommend taking a look at Stewart Smith's blog posts. They really
are enlightening about how much code is actually different and what
direction the projects are going in.

http://www.flamingspork.com/blog/

IMO, the most aligned with Debian is Drizzle, but it also has the
fewest users.

> Because of my background I have more to say in regards to Free
> Software project management. And in regards to that, at least MariaDB
> seems to be commited to Software Freedom and it has the capacity to
> diverge from MySQL if Oracle would in future behave even less freedom
> loving than what it has shown so far. As I understood (might be wrong)
> Percona does not have the momentum to fork off MySQL if needed.

"Seems more free" isn't enough to incite me to a wholesale change.

IMO, these blog posts by Stewart are probably a sign that Percona is
at least looking at whether they should start tracking MariaDB rather
than MySQL.

> 
> Also, looking at what Fedora and OpenSUSE is doing[1], they both
> included MariaDB in their repos. I think the general trend is from
> MySQL to MariaDB with Wikipedia[2] an all, and following it would be
> the safest option and likely to guarantee that there will be
> MariaDB-knowledgeable people around to help with maintaining the
> packages.
> 

I think Fedora and OpenSUSE are doing great work. Seems that people have
stepped up to do the packaging for MariaDB. I know you've stepped up
too here, so perhaps we can start shipping MariaDB in Debian soon. But
I don't think we're ready to just abandon MySQL just yet.

> So I suggest we keep MySQL for at least one cycle and include MariaDB
> ASAP, so that both will be available and users can vote themselves
> running either "apt-get install mysql-server" or "apt-get install
> mariadb-server".
> 

+1, but no time limit. As long as users are ok with the way things work
with MySQL, I'm comfortable with continuing to maintain it. Thus far
we've had a single regression reported due to shipping newer patch
releases, and that one was basically "really old and busted stuff
stopped working".



More information about the pkg-mysql-maint mailing list