Weblog:   Why MySQL grew so fast (news from the 2004 MySQL Users Conference)
Subject:   Comments from an early MySQL user
Date:   2004-04-20 07:34:13
From:   trachtenberga
As a long time MySQL user, (I think we bought support contract 000018 back in early 1998,) I agree with quxx's comment that one of the reasons for giving MySQL money in the early days was to have Monty personally debug nasty problems.

Here are some additional thoughts I had to Andy's post;

1) Like Christensen's disk drives, the SQL interface is a standard. (At least at the basic levels used for Web applications.) When things are standardized, they're easy to commoditize because the switching costs are so low.

This is more of a general argument for open source databases in general than specifically pro-MySQL.

2) MySQL did a very good job of making it to import your data. At the time, mSQL was the open source database of choice. MySQL's original API is pretty much a direct knock off of the mSQL API. The PHP 2.0 (aka php/fi) manual even said: "mysql is an clone of the mSQL package." Of course, unlike mSQL, MySQL was multi-threaded, so one slow query didn't cause your entire site to hang.

Given the similarity in names, the conversion to MySQL was almost as simple as s/msql/mysql/g. (This is ironically a typical Microsoft embrace and extend technique. For instance, I think you can still read in Lotus 1-2-3 document into Excel *and* even discover the Excel version of 1-2-3 command sequences.)

3) I totally agree when you say MySQL's SELECT speed was it's most important asset. This is where Postgres stumbled. (I know this is no longer a problem with Postgres, but it was when we chose MySQL back in the late 90s.)

4) I think there are some co-evolutionary links among Apache, PHP, and MySQL. Early on, Apache tipped as the web server of choice. PHP, as one of the first languages to have a Apache module (as compared to CGI) version, was frequently bundled with Apache in many Linux distributions. This helped PHP emerge as the Web language of choice. After awhile, the PHP/MySQL combination was so popular, PHP started bundling MySQL client libraries and enabled MySQL by default. While I won't claim this was vital to MySQL's success, this chain of events definitely helped keep MySQL from being dislodged by another database.

5) Now, as to whether MySQL will screw this all up with their new interpretation of the GPL, that's another post. I think they may lose some open source developers to Postgres, but you're right when you say larger (i.e. paying) companies like the support MySQL, AB is able to provide. These companies are pricing in risk into the cost of their database, so even if MySQL isn't "free" (in whatever sense of the word you want to use), it's less expensive than alternatives (Oracle, Postgres) in terms of a cost/risk blend.