Posted
by
Soulskill
on Friday June 14, 2013 @09:12AM
from the market-share-sinking dept.

An anonymous reader writes "Red Hat will switch the default database in its enterprise distribution, RHEL, from MySQL to MariaDB, when version 7 is released. MySQL's first employee in Australia, Arjen Lentz, said Fedora and OpenSuSE were community driven, whereas RHEL's switch to MariaDB was a corporate decision with far-reaching implications. 'I presume there is not much love lost between Red Hat and Oracle (particularly since the "Oracle Linux" stuff started) but I'm pretty sure this move won't make Oracle any happier,' said Lentz, who now runs his own consultancy, Open Query, from Queensland. 'Thus it's a serious move in political terms.' He said that in practical terms, MariaDB should now get much more of a public footprint with people (people knowing about MariaDB and it being a/the replacement for MySQL), and direct acceptance both by individual users and corporates."

Seriously, is anyone out there in geek land even considering MySQL for a brand spanking new project with no history attached to MySQL? I don't know of any. It's just a matter of time now for things to swing from MySQL to MariaDB, though I think a lot of geeks will take a good look at other options like PostgreSQL before switching. Unless Oracle does something really interesting with MySQL, it's dead... seriously... no one in the year 2120 will even remember MySQL except for unfortunate geeks working for the government and large banks who will continue doing new projects with MySQL until the end of time.

MySQL filled a niche for web application development, but not very much else. The large banks are all using old-school commercial databases: Oracle, DB2, Sybase, SQL Server. Government applications prefer PostgreSQL because of its permissive license. If they want to customize the source code for a project that isn't pubic, they can do that without having to worry about GPL compliance.

In the other hand, in some countries there are a pledge for using open formats for government data, something that could give a chance to keep using, or take the information from it, even after the company behind it closes or just decide to switch direction, maybe many years after. The code that is behind don't need to be open source, but usually if is, then the format of the data is open too (or at least, the way to access it).

In any large organization, guaranteeing that something you do will not get distributed outside of its original domain adds a compliance cost. The idea that compliance with a license is overhead that really does cost something has already been beaten into larger organization's heads by the terms of commercial software like Microsoft's, where audits and possible violations are a real cost of doing business.

Companies familiar with open source licenses know that if they touch GPL code but keep it private, they

Many hosting packages have MySQL installed as default, almost all of them in fact, and web devs are unlikely to have any interest in moving. I mean what are they going to tell their clients, someone in a far away office unconnected to anything has decided that the DB system is outdated, so you have pay us to migrate your data? Oh, says the client, will it offer me any benefits or will my site stop working? Why no, says the web dev. Please.

You clearly have no experience with web development. Most of the sites on the internet are in shared hosting packages, anything that gets less than a few hundred thousand hits a month. The only thing these sites are charged for are hosting and domain names. Anything that involves any kind of effort on the part of the developer gets charged for seperately. Hosting companies are quite capable of keeping the same software on new servers indefinetely.

New servers will not run old versions of MySQL at some point. This means they will have to decide if they want to install new MySQL or MariaDB. That is when the latter will go into place since it is the redhat standard.

Well, there is more to life than web servers. In fact, databases shouldn't run on web servers if they have serious amounts of data, they should be on their own hardware.
Speaking of Redhat, you need to include CentOS with Redhat, since it's essentially the free version.

Seriously, is anyone out there in geek land even considering MySQL for a brand spanking new project with no history attached to MySQL? I don't know of any. It's just a matter of time now for things to swing from MySQL to MariaDB, though I think a lot of geeks will take a good look at other options like PostgreSQL before switching. Unless Oracle does something really interesting with MySQL, it's dead... seriously... no one in the year 2120 will even remember MySQL except for unfortunate geeks working for the government and large banks who will continue doing new projects with MySQL until the end of time.

MySQL has too big of a momentum to just disappear (and the people keeping it alive are not governments and large banks, but rather web developers).

I'm a full-time web developer and I am just starting a new project and tossing a coin between MySQL and Postgresql. The reason why I am even considering MySQL is that all my existing code and libraries are thoroughly tested with it. Even brand spanking new projects use old libraries:)

In theory, database abstraction layer should be good enough to make everything

Not sure which libraries you're referring to, but pgsql has a lot to offer.. A lot of libraries for more data types than mysql supports. As for sequences, you may want to consider a UUID/GUID field for your primary keys in non-log tables.. yes, the indexing is slightly slower, but more portable to other systems and support for replication, and distributed data is a *lot* better. You also get the benefit of being able to generate the ID in your code, instead of relying on a return value for the data record

Sometimes it's good to start fresh.. also, if you have good unit tests for your utilities then "testing" should be easy.. if you don't, then are they really well tested?

In theory, very true. In practice, it's an uneasy feeling of switching to a new tool, no matter what it is. Unit tests exist and are useful, but I still haven't mastered writing bug-free code despite all the testing:)

Every time I've had to use/touch MySQL, it has been extremely frustrating, and far more so than any other DB I've worked with (Firebird, Oracle, MS-SQL, DB2, SQLite, etc), with the exception of SQLite they've all been far more capable as well.

I don't doubt that's the case, but as usual with these things - you probably use MySQL the least and are least comfortable with it. In the last 5-6 years, I only ever deployed significant projects on top of MySQL or PostgreSQL, and while PGSQL was always more capable (and I personally enjoyed

I'm pretty sure Oracle couldn't care less if RedHat uses MySQL or MariaDB since it doesn't benefit greatly from either. Oracle would much rather have everyone using Oracle DB since that is where they put most of their development and support efforts and that is what makes them their money. I don't think Oracle would even continue to offer MySQL support if they weren't ordered to do so under the conditions of their buyout of Sun.

Seems like MariaDB is the greatest thing after sliced bread, but, unless you are running your own server, many hosting services are still offering mySQL as the DB to use. I was going to check out MariaDB, but for now, unless I have a requirement from a client, it doesn't seem like its worth my time to use. It is still a WAMP and LAMP world out there for the most part.

I made the switch and couldn't be happier. I haven't done an official speed comparison but it seems that MariaDB is much more responsive. That tiny little ms counter in Sequel Pro is showing much shorter times for routine tasks.

But the fulltext indexing is not available to the default table engine. That is my one complaint.

I would be curious to know what the insider thinking is at Oracle. I suspect they thought they had the free database crowd by the balls. No doubt they had all kinds of interesting long term strategies to switch companies over from MySQL to overpriced Oracle products. Now those strategies are going to fade into nothingness.

It makes sense in Scandinavia, because MySQL was named after the female name My (Monty's daughter along with Maria), not the English possessive pronoun. As for the pronunciation, think about how New Yorkers pronounce "New York" -- there's the Scandinavian "Ny" (meaning "new").

DB2 runs on 32- and 64-bit Intel and AMD processors, POWER processors, and System Z processors. Please tell us which of those is 40 years old.

I run DB2 on 64-bit Intel. I pray that one day it will add the same level of import/export capabilities that come for free with both MySQL and PostgreSQL. Or at least that I can do a dump from an i5 system to the Intel system.

For that matter, I would be overjoyed if they'd just do like everyone else and add a create-from-select SQL option.

The main thing Oracle Linux does is run a newer kernel version than the RHEL kernel. RHEL6 for example is based on 2.6.32, while Oracle's Unbreakable Enterprise Kernel R.2 [oracle.com] (pdf) was running 3.0.16 when they last updated things.

Grabbing the newer kernel lets Oracle win direct performance shootouts against RedHat. They can get away with it because the only applications they're testing on it is Oracle, so if the upstream kernel breaks other things they don't care. RedHat cares about all of their supported software, so they have a lot more QA issues to deal with. Note that this little trick is also how Oracle has gotten around caring that RedHat made it harder to see what individual patches they apply to the upstream kernel in their release. They aren't using that version of kernel at all, so whatever RedHat is doing to customer their 2.6.32 branch they're ignoring.

Of course, if you're willing to do this, you can easily grab a newer Linux kernel from kernel.org yourself on regular RHEL, too. The game Oracle is playing with "Unbreakable Linux" is all marketing hype.

Pretty much the only thing anybody run on it is oracle anyways. If your going to pay through the nose for support contracts you might as well have one place supporting the whole thing.to stop the finger pointing.

I'd argue otherwise. Oracle submitted a boatload of bugs (performance & otherwise) to Redhat to make Oracle products run better. Redhat ignored most of them. Oracle forked red-hat & rolled their own. Isn't that the benefit of open source?

Companies that throw submissions upstream and then fork if they're not all accepted are not very useful to me. RedHat has one set of rules about what sorts of changes they're willing to accept in a stable release, the Linux kernel developers have another. Oracle is content to fork both and make changes, with their own policy for what is and isn't acceptable. Some of the ignored submissions are due to those policy differences, others ignored because Oracle wasn't willing to work within the community devel

Which part of that is supposed to make people feel comfortable that MariaDB will still be around in a few years, after Monty gets an offer to buy that company? "Insanity is repeating the same mistakes and expecting different results"

Open source doesn't remove the damage here, it just contains it. Look at how much effort is being wasted by people who are switching from MySQL to MariaDB now. All of that overhead is damage to an open source community that could have been working on other things with that time. If you're smart, instead you'll switch to a truly open database, one that doesn't have a company requiring copyright assignment involved at all.

MySQL was a reasonable choice back when PostgreSQL didn't have Windows support and pe

The whole point of this article is that RedHat is putting effort into this switch. Individual users may not see it, but this mess is causing headaches for people who maintain and distribute open source software stacks. And incompatibilities for users are coming one day too, as soon as the feature set starts drifting between MySQL and MariaDB.

We haven't had any problem at all replacing MySQL with MariaDB in Fedora per se.

MySQL folks wanted to keep MySQL in Fedora *too*, and we had some fun figuring out the packaging and upgrade paths such that both new-world-MySQL and MariaDB could be in Fedora with MariaDB replacing old-world-MySQL on F18->F19 upgrades, but RHEL will very easily avoid all that by simply not including new-world-MySQL (I expect).

Given that there are plenty of good alternatives, it seems that the real value in MySQL is the branding. Oracle could've bought any DB engine they wanted, but which open-source one has the most name recognition? Sometimes, "what's in a name" turns out to be "everything."

Here's the real solution: Don't sell it to a corporation in the first place like Monty did.

That's easy for you to say, not being in Monty's shoes.Selling it helped him pay alimony and child support for his daughter My [*], for which the database was named.

And it did not kill the open source - as per usual, it forked around it, and evolution continued.

[*]: Off-topic: Pronounced with a near-close near-front protruded vowel, which doesn't exist[**] in English. The closest approximation is "ee" said with the lips rounded like saying "oo". "Y" is a vowel in its own right in Swedish, and saying "Me

Do I even need to point out that this kind of thing hurts the perception of Open Source developers and by extension Open Source software? Then again, it's about time we have a term to replace the horribly racist "Indian Giver [wikipedia.org]" term. "MySQLGiver" maybe? "Open Source Giver"?

You're right. Such an egregious abuse could never happen with closed source software. *cough*Skype*cough*

Sure, why not? MySQL is crap. MySQL is crap [arstechnica.com]. 10 years later, MySQL is still crap. MariaDB and Percona are less crap, but still crap.

Oracle is on-par with PostgreSQL, with some drawbacks, and you can argue and haggle--personally I think Oracle is inferior, but you'll get dissenters and they *are* in the same class. MS SQL Server is inferior--it's a good product in its space, but its space is a subset space of PostgreSQL. More to the point, Oracle and MS SQL Server are both closed, proprietary pay-ware; PostgreSQL, MySQL, DB2, and SQLite are free. That means the argument is essentially PostgreSQL vs MySQL.

PostgreSQL actually functions like a real database (MySQL does a lot of crap it shouldn't), outperforms MySQL, has working replication now (FINALLY, since around 8.0-ish, a few short years back), has BETTER replication than MySQL, and is about as easy to set up (I learned it in about 30 minutes). In general it's a better product as a database. Since it has no real drawbacks besides blunt protocol compatibility (i.e. a MySQL-specific app can't talk to PostgreSQL, either because of network presentation protocol (MySQL protocol 3306) or application protocol (MySQL-specific command language)) compared to MySQL, and many advantages, it's essentially a higher-quality and thus better piece of software.

Optimally, RedHat, Debian, Ubuntu, SuSE, etc should provide the best MySQL possible--Percona, MariaDB, whatever--while providing the guideline that PostgreSQL is a better product. Because, hell, they're already endorsing by dumping MySQL instead of simply including both Percona and MariaDB. The issue is that the political chip of saying, "X is better than Y," is very volatile. We could sit here and hash out merits and come to that exact conclusion--but even then, when we're all convinced that this is FACT and not OPINION, what do you think would happen if RedHat and Ubuntu both flatly said, "Use PostgreSQL, MySQL is crap"?

If you buy web hosting from a cheap cpanel-based provider, you get MySQL for free and it's hard to set up anything else. Moreover, a moderately skilled web developer can get a database-driven site set up in just a couple of minutes with PHP+MySQL.

MySQL+PHP is popular for the same reason VB6 used to be popular. It's quick and easy and it gets stuff done. Elite computer scientists look down upon both because they are perceived as quick and dirty hacks. But that doesn't matter; for many applications, a quick a

towards the end, Steve says to Bill "Bill, our stuff is better." To which Gates replies "You just don't get it Steve" and walks away.

Better is not always better.Postgres may be better, but it's "hard", whether because of a lack of mindshare, or because MySQL has a cuter name, or whatever reason - so people don't use it.Because people don't use Postgres, people don't use Postgres.

But if Oracle require special performance tuning which none of the other databases does, then it does suck in 90+ percent of all usecases for sql servers(That is: The usecases where there is no fulltime person hired just to tune the database).

But if Oracle require special performance tuning which none of the other databases does, then it does suck in 90+ percent of all usecases for sql servers(That is: The usecases where there is no fulltime person hired just to tune the database).

This is very true. I work on many different projects and move from company to company setting up web applications, usually for in-house use - well, after I'm finished, I don't have time to constantly come back and re-tune the database, nor would the company want me to do that and keep paying for an application that is essentially "completed". Also, hiring a full-time database tuner would be ridiculous for all of the cases I've been involved in (monetarily crazy and otherwise).
Some places using MySQL for m

PostgreSQL is included with RedHat too, is not taken out. But, if despite all what its critics say, you still want a MySQLish database in Redhat, then you will have MariaDB, that is more performant and more future proof in the open side than MySQL.

Might want to be careful with throwing "troll" around, if you're going to miss/ignore rather important things like Maria being a drop-in replacement for MySQL, so nothing you learned about LAMP is lost by this change.

Well, considering that AOLserver gives you TCL for free, adding Perl seems like a bit of an impedance mismatch. Aside from that, nothing.

(Note, I only know this because I was the Debian TCL maintainer for several years; which is why I know that AOLServer is A) free software and B) written in TCL. Otherwise, I would have assumed you were joking.)

I recently upgraded to MariaDB. Took a whole of 5 minutes with just a few seconds downtime (just ~3GB of data, though); nothing changed except I occasionally see a different name in logfiles and tools.

Yes, and IBM also originally wrote Postfix. Of course, using Postfix with Postgres is easy: http://www.postfix.org/PGSQL_README.html [postfix.org]. Or apt-get install postfix-pgsql. I can't address whether than includes support for "hashes and Btrees", since I haven't tried, but seems implausible that it wouldn't. Postfix has been developed as open-source for a long time! OP does seem remarkably confused. But I'm not completely sure whether he's simply blaming the wrong company, or just plain wrong. I suspect the latter