LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   Replace MySQL with MariaDB in Slackware (http://www.linuxquestions.org/questions/slackware-14/replace-mysql-with-mariadb-in-slackware-4175447832/)

abesirovic1 01-30-2013 07:05 AM

Replace MySQL with MariaDB in Slackware
 
Hi guys,

I would really like the community's opinion on this topic as I've seen it started in some other distros as well. Initially, I didn't give it much thought but seeing the recent news with the Galera cluster and some of the improvements in MariaDB (like the new storage engines including Cassandra) I'm wondering if it might not be a bad idea to switch to MariaDB.

jhw 01-30-2013 08:11 AM

I really like Slackware's conservativenes ... if it ain't broke, don't fix it. But in the case of MySQL, and since I really dislike Oracle and it's development patterns, I must say either change to MariaDB or dump MySQL as a whole.

bosth 01-30-2013 09:16 AM

I wonder if it really matters. I don't think there's any software in Slackware that requires a db server (is there?) and anyone who will be putting a Slackware-based system into production will evaluate all the competing open-source options, including MariaDB, PostgreSQL, MongoDB and so on, rather than whatever ships by default.

GazL 01-30-2013 09:34 AM

Quote:

Originally Posted by bosth (Post 4880721)
I wonder if it really matters. I don't think there's any software in Slackware that requires a db server (is there?) and anyone who will be putting a Slackware-based system into production will evaluate all the competing open-source options, including MariaDB, PostgreSQL, MongoDB and so on, rather than whatever ships by default.

That sounds like a good argument not to ship any of them by default. I don't have a need for a db so I don't really care, but keeping Oracle at arms length seems like a good idea.

a4z 01-30-2013 09:52 AM

Quote:

Originally Posted by bosth (Post 4880721)
I wonder if it really matters. I don't think there's any software in Slackware that requires a db server (is there?) and anyone who will be putting a Slackware-based system into production will evaluate all the competing open-source options, including MariaDB, PostgreSQL, MongoDB and so on, rather than whatever ships by default.

KDE semantic desktop components do use DBs, one of them is mysql

bosth 01-30-2013 10:02 AM

Quote:

Originally Posted by a4z (Post 4880747)
KDE semantic desktop components do use DBs, one of them is mysql

Embedded, not a db server.

ponce 01-30-2013 10:22 AM

Quote:

Originally Posted by bosth (Post 4880749)
Embedded, not a db server.

If I remember well, it links to the static libmysql.a.

referring to this list it seems there are many things in slack that use mysql, as a direct (most notably perl and qt) or recursive dependency.

I can agree on a political choice to substitute it with mariadb, but I think the testing needed to be sure that anything won't break (and I'm not even considering the stuff we have on slackbuilds.org depending on it) is huge and probably painful, not sure at all if worth it.

Plus, slackbuilds.org already provides mariadb so it's simply a matter of uninstall mysql and build/install it: doing it now can also help discover bugs/incompatibilities so, if someone feels that this is needed and would like to help, maybe it's better for her/him to switch locally first.

http://slackbuilds.org/repository/14.0/system/mariadb/

ppr:kut 01-31-2013 03:08 AM

MariaDB is and will stay for the forseeable future a drop-in replacement for MySQL. That means that there should be no incompatibilities with MySQL whatsoever. Everything that works with MySQL should work without issues with MariaDB. If that's not the case it is a bug in MariaDB and usually very quickly resolved by them, but it doesn't come up very often. So testing compatibility after a switch is really a non-issue.
I'm running MariaDB on my system for two years now and never had a single compatibility issue with any application.

If the reasons for switching to MariaDB are be purely political, it will probably never happen. Just because Oracle has a bad reputation and acted a bit unresposible lately does on its own not warrant a switch away from MySQL. IF there is a switch to MariaDB it would be out of technical reasons, and there are quite some. Most of them are listed here so I don't go over them again: https://kb.askmonty.org/en/mariadb-vs-mysql-features/

An regarding KDE, amarok links with libmysqld (static for MySQL, shared for MariaDB), akonadi uses mysqld, but there are also lots of other applications that use MySQL in Slackware.

chrisretusn 01-31-2013 03:36 AM

If it's not broke...

astrogeek 01-31-2013 03:53 AM

I am a heavy MySQL user and run multiple versions on the same box (not concurrently) for maintaining compatability with some slowly changing remote systems. (I still run 3.23.58 regularly).

But I almost never use the MySQL that ships with Slackware simply because I prefer to manage my own builds and usually need to rebuild with other options anyway. So, as a previous post stated, those who actually use it, often have their own requirements and would be largely unaffected - true in my own case.

I have recently been playing with MariaDB but have not replaced any of my production MySQL instances - yet. But my play is directed at eventually doing just that, at least for those that do not require backward compatability, simply to put more distance between Oracle and myself.

But even though MariaDB is a drop-in runtime replacement for MySQL, I wonder if it would not be quite a lot of work for Pat to begin building other things against MariaDB in the long run. For example, MariaDB drops in and runs with the PHP mysql options - but if Slackware shipped with MariaDB then it would also need to shift everything that builds against MySQL to build against MariaDB... I am not actually sure the drop-in aspect would extend that far without unforseen problems.

But I suppose I would be happy either way, and would prefer MariaDB in the long run if Oracle begins to play games with licensing of MySQL.

ppr:kut 01-31-2013 04:10 AM

Quote:

But even though MariaDB is a drop-in runtime replacement for MySQL, I wonder if it would not be quite a lot of work for Pat to begin building other things against MariaDB in the long run. For example, MariaDB drops in and runs with the PHP mysql options - but if Slackware shipped with MariaDB then it would also need to shift everything that builds against MySQL to build against MariaDB... I am not actually sure the drop-in aspect would extend that far without unforseen problems.
I'm not sure what problems you imagine, but I'm not aware of any issues. You wouldn't be able to switch easily from MariaDB back to MySQL once you start using MariaDB specific features, but that's clear from the start.

astrogeek 01-31-2013 04:23 AM

Quote:

Originally Posted by ppr:kut (Post 4881209)
I'm not sure what problems you imagine, but I'm not aware of any issues. You wouldn't be able to switch easily from MariaDB back to MySQL once you start using MariaDB specific features, but that's clear from the start.

You are right, I am imagining them because I do not have anything specific in mind.

But it is easy for me to imagine that dropping MariaDB into a system already built with MySQL could be a fundamentally different proposition than building everything else against MariaDB from the ground up.

Maybe not...

bosth 01-31-2013 09:21 AM

Quote:

Originally Posted by ponce (Post 4880766)
referring to this list it seems there are many things in slack that use mysql, as a direct (most notably perl and qt) or recursive dependency.

Interesting! But I guess in most cases - like perl and qt - MySQL is linked in because it is there not because it is actually needed. I'd forgotten about akonadi, but from having built new releases myself on a number of occasions, Amarok's only dependency is a static lib. In any case, neither require a full-blown db server.

But I have no irons in this fire. I use neither MySQL nor MariaDB...

ppr:kut 01-31-2013 09:40 AM

Quote:

You are right, I am imagining them because I do not have anything specific in mind.

But it is easy for me to imagine that dropping MariaDB into a system already built with MySQL could be a fundamentally different proposition than building everything else against MariaDB from the ground up.

Maybe not...
There could of course be an issue, but for the MariaDB developers compatibility with MySQL is very important. I know from experience that they are quick with providing fixes for things like that, so in case we would find an issue it would not be one for long.

From personal experience of building a lot of things against MariaDB instead of MySQL (also rebuilt packages provided by Slackware) I can tell you I haven't encountered such a thing yet. That of course doesn't mean there is none, but it's enough of a reassurance for me to not be worried about it.

astrogeek 02-04-2013 08:58 PM

Quote:

Originally Posted by ppr:kut (Post 4881412)
From personal experience of building a lot of things against MariaDB instead of MySQL (also rebuilt packages provided by Slackware) I can tell you I haven't encountered such a thing yet. That of course doesn't mean there is none, but it's enough of a reassurance for me to not be worried about it.

That statement has been very much on my mind the last few days, I am going to need the personal experience that comes from using MariaDB daily, sooner or later. My playtime with it is not going to get me there.

I am a latecomer to 64 bit hardware, but I have a recent 64 bit machine that I just installed Slackware 14 on and am slowly building it out to eventually replace my current personal workhorse. So today I decided to remove MySQL and installed MariaDB 5.5.29 instead. Now I will get the experience that builds the confidence.

I will add that while prepping for the switch I read a lot of articles and "Ask Monty" pages. Doing that enlightened me a bit on just how bad Oracle has been for MySQL, and I have now swung fully to the "MariaDB is the future" camp.


All times are GMT -5. The time now is 03:48 PM.