I saw over on Sean's blog that MySQL 5.0 is released. Before I get too into this rant let me say that MySQL is a fine tool in some situations. I'll steal the highlight's of the release from Sean as well:
There's more but this is enough for me to talk about. Take a look at that list. Does anything strike you as odd? If not, let me roll back the clock just a little while to when MySQL added another great new feature. The developer team called this feature "Support for Transactions", I believe it was added in version 3.23. I'm being an ass of course, Transactions had been in every other relational database, including crap like Access, since the dawn of time. The MySQL fans made such a big deal out of this that I had to grin. Transactions! What will they think of next? Pretty soon they'll support sub-selects and ANSI standard JOIN syntax. This is the database I am constantly hearing is "better" than things like Oracle, and UDB, and SQL Server.
Now we have another release with some great new features. I have many complex feelings on this issue, since I do in fact like MySQL. Despite liking it, I think I can sum up my feelings with this press release:
"Kia Releases new Car V2.0. Standard options now include:
"
I guess the reason I feel inclined to poke at MySQL is that I am always hearing from its fans how it is so much better and faster than big expensive RDBMS's. The speed one I found especially irksome, and my quest to prove or disprove this rumour led me far and wide. I landed at the Transaction Processing Performance Council's web site: http://www.tpc.org/; I was shocked (by shocked I mean utterly un-surprised) to find that MySQL is nowhere on these performance lists. A little digging shows that its somewhat expensive to participate, which may be a barrier for a free product. A little more digging shows that a non-profit company can submit their product for a ridiculously small fee ($500-$1000), now I was shocked to find MySQL not on the lists. A little more digging shows that MySQL just plain isn't standards compliant so cannot participate in the test anyway. I do not have a list of what features are missing but I suspect near the top are various transation isloation settings and things of this nature. Specifically: the type of things you'd want in a big enterprise database where disastor recovery and data integrity are of paramount important, the type of things that slow your database down just a little bit...
I like MySQL, but I doubt its "better" than Oracle or SQL server unless your sole metric for judging value is the fact that its free. "Free" is a loaded term anyway, but the MySQL team is working on making it easier to use and providing good tools. There seems to be an aweful lot of people willing to accept on blind faith that MySQL is better than high-priced alternatives. That's fine if you want to defend your religion, but if you want to convince me that you are better, you have to show me.