MySQL is the World’s most popular open-source database. Though it does not ship with a GUI to manage it like other databases, the developer community around the world loves MySQL. MySQL is a popular choice of database for use in web applications and web hosting, and is a central component of the widely used LAMP open source web application software stack (and other ‘AMP’ stacks). LAMP is an acronym for “Linux, Apache, MySQL, Perl/PHP/Python.”The advantage is that it is even compatible with Windows Web Hosting.
The internet offers a variety of articles and tutorials for different concepts in MySQL. But I found that there is very little literature about the how MySQL has evolved to the stage it has reached today.
The initial development stages of MySQL had to overcome a lot of hurdles. Firstly it was a time that the market for databases were blooming. So naturally many big players in the arena tried to aquire it or put it down. But due to the endurance of the community, and support from a few Non-profit organizations it was able to reach beyond competitive proessures. Let us get into the evolution of this marvellous database with a timeline.
MySQL was developed by the company named MySQL AB. It is named after co-founder Michael Widenius’ daughter, My. MySQL AB is a company with its base in Sweden, founded in 1995. The company was founded by Michael Widenius (Monty), David Axmark and Allan Larsso. It was during this period that MySQL was developed and tested hard in the warehouse of MySQL AB. Upto 1999 the database was sold commercially.
With the fuzz of Y2K, there was another major breakthrough. MySQL was made open-source under the GPL license. Though the revenue of the company went down by 80%, the developer community around the world welcomed it with open hands. Slowly MySQL started aquiring the position of the most opted database for web applications.
In the beginning of 2001, Marten Mickos was elected as the CEO of MySQL. He was a man with a sales and marketing background. During his reign, there were more than 2 Million active installations of MySQL DB. Also during 2001, MySQL was funded by Scandinavian venture capitalists with an undisclosed amount. It is rumored to something between $1 to $2 Million.
By 2002, the company was growing rapidly that launched a US headquarters in addition to the Swedish one. The number of active users was more than 3 Million by the end of 2002 and the company made a handsome profit of $6.5 Million.
2003 was a very successful year for MySQL. The project raised a whopping $19.5 Million from Benchmark Capital and Index Ventures. Not just that, the active users grew to 4 Million and it was estimated to have more than 30,000 downloads a day. By the end of the year, the company made a great profit of 12 Million in revenue.
Now it was time for hard-core development. The users were not satisfied with a basic Relational Database Management System. During this time period the company enhanced the core features. The DB was more stable and the mean time between failures became very high. Features such as cursors, updatable views, information schema etc., were incorporated. Also during this period, the company saw its peak in terms of revenue and the number of users.
By the end of the year 2006, there were more than 8 Million active users of MySQL and the company made a revenue of 50 Million. This was mainly due to the reason than instead of OEM licenses, they had started selling end user licenses from 2004.
2007 was a silent year for MySQL. There no major developments in the technology or with the marketing strategy. The company and the user base grew with the natural pace and it made a revenue of 75 Million in 2007.
2008 brought a changeover to MySQL. Sun Microsystems acquired MySQL AB for approximately $1 billion. But shortly after the acquisition Michael Widenius (Monty) and David Axmark, two of MySQL AB’s co-founders, begin to criticize Sun publicly and leave Sun shortly after.
But under Sun Microsystems, MySQL saw major technological and economic developments.
The developer community took on MySQL openly and developed many new features such as
• Partitioned tables with pruning of partitions in optimizer
• Shared-nothing clustering through MySQL Cluster
• Hot backup (via mysqlhotcopy)
• Multiple storage engines, allowing one to choose the one that is most effective for each table in the application
o Native storage engines (MyISAM, Falcon, Merge, Memory (heap), Federated, Archive, CSV, Blackhole, Cluster, EXAMPLE, Aria, and InnoDB, which was made the default as of 5.5)
o Partner-developed storage engines (solidDB, NitroEDB, ScaleDB, TokuDB, Infobright (formerly Brighthouse), Kickfire, XtraDB, IBM DB2). InnoDB used to be a partner-developed storage engine, but with recent acquisitions, Oracle now owns both MySQL core and InnoDB.
o Community-developed storage engines (memcache engine, httpd, PBXT, Revision Engine)
o Custom storage engines and
• Commit grouping, gathering multiple transactions from multiple connections together to increase the number of commits per second were incorporated into MySQL.
By the end of 2008, MySQL was a major competitor in the arena challenging various commercial databases including Oracle.
In April 2009, Oracle Corporation entered into an agreement to purchase Sun Microsystems, the owners of MySQL copyright and trademark. Sun’s board of directors unanimously approved the deal; it was also approved by Sun’s shareholders, and by the U.S. government on 20 August 2009.
There were a majority of the community members who opposed the deal. A movement against Oracle’s acquisition of MySQL, to “Save MySQL” from Oracle was started by one of the MySQL founders, Monty Widenius. The petition of 50,000+ developers and users called upon the European Commission to block approval of the acquisition. At the same time, several Free Software opinion leaders (including Eben Moglen, Pamela Jones of Groklaw, Jan Wildeboer and Carlo Piana, who also acted as co-counsel in the merger regulation procedure) advocated for the unconditional approval of the merger. As part of the negotiations with the European Commission, Oracle committed that MySQL server will continue until at least 2015 to use the dual-licensing strategy long used by MySQL AB, with commercial and GPL versions available.
With that agreement, today MySQL is available in both commercial and GPL versions. The MySQL 5.6 Community Server is the latest of the releases in the GPL license. MySQL Enterprise Edition Server and MySQL Cluster CGE are owned by Oracle and are released as proprietary software. The price range starts from $5000 for MySQL Enterprise Edition Server and $10000 for MySQL Cluster CGE with Server bundle.
Though the Enterprise edition has benefits such as prompt support and rich features, most developers around the world opt for the community edition for normal web applications. The community edition itself is stable and reliable, though it misses a few out of the box features offered by Oracle.