At the beginning of the 90s of the 20th century, relational databases were mainly known from the corporate sector: Oracle, Informix, IBM were the top dogs that Microsoft tried to compete with on their Windows NT SQL Server. Neither smaller companies nor mere mortals could afford these products: An Informix license for one computer could cost DM 50,000 (approx. € 25,000). The free Postgres already existed at this time, but it used a proprietary query language.
In early 1995, mSQL was the first inexpensive relational database to be operated using SQL. However, she was not free and had only very limited skills. Among other things, the data types were missing
TIME as well as automatic numbering of the data records such as
On May 23, 1995, the Swedish company TcX AB completed the first internal version of the relational database MySQL, which used the same API as mSQL. Shortly afterwards, the developers Michael “Monty” Widenius, Alan Larsson and David Axmark founded the company MySQL AB, which continued the company
Development took over. MySQL first became generally accessible in 1997 with version 3.1. It should make it clear that the database system had been around for some time.
Right from the start, MySQL was under the free GNU General Public License. This made it easier for those interested to learn from and experiment with SQL and quickly contributed to its widespread use among Linux fans. There, however, there was also criticism, especially from Postgres fans. This free database had meanwhile switched to SQL as the query language and implemented this standard much more thoroughly than MySQL.
Creative interpretation of the standard
This took a lot of freedom, whether for the convenience of the developer or to make it easier to use. For example, it refrained from strict input checks, making it about the date
0000-00-00 like that
31. Februar 2003 accepted without complaint. Error messages also did not appear when the database server changed a table definition. Missing error messages in SQL constructs, which MySQL accepted but ignored – for example – were particularly annoying for experts in other database systems Field constraints.
Relational database experts also complained about the lack of essential functions in their opinion. In their view, the most important thing was transactions: This ensured that Oracle and Co secured related operations, for example to prevent the same ticket from being sold multiple times to different customers. VIEWs, stored procedures and triggers were also missing, which made life easier for database developers. Given these quirks and gaps, it seems astonishing that MySQL celebrated its 25th birthday today and did not disappear silently and silently years ago. One reason for this, however, is probably precisely that these shortcomings did not interest database newbies at all. Like any Linux software, MySQL can be used with the familiar four-tone
gunzip; ./configure; make; make install
to install. And at least initially a simple mysqld was enough to start it. You didn’t have to worry about anything in the company. No VACUUM like Postgres, no configuration of any raw devices like Oracle – MySQL just ran, let its database files grow when needed and waited for SQL commands.
Low entry hurdle
All of this lowered the entry hurdle for many who simply wanted to experiment with a database. This also included developers who wrote MySQL interfaces for PHP and Perl at an early stage. As a result, the database could be used for web applications, which is still expressed as LAMP (Linux, Apache, MySQL, PHP / Python / Perl). This made it interesting for other projects, such as content management systems such as Typo 3 or the blog software WordPress, which use the database internally. Facebook now relies on MySQL as well as OBI, NASA and Uber. However, the product is no longer as free as it used to be. In 2008, MySQL AB sold it to Sun Microsystems for $ 1 billion, which was taken over by Oracle two years later. Until then, development had progressed continuously and had retrofitted many missing functions: SQL-compatible data could be enforced, there were VIEWs, transactions, full-text searches, stored procedures and triggers. Added to this are non-relational models, for example for storing key-value pairs, unstructured documents and JSON data, and better OLAP support through column-oriented data storage.
However, Oracle initially raised doubts about its willingness to further develop MySQL. First, it stopped working on the development of the new Falcon storage engine, which had been going on for years. Then, however, Oracle put more and more energy into eliminating bottlenecks and implementing new functions. However, many of the latter only ended up in the commercial version of the server. The error database, previously generally accessible, has become non-public, and the public regression tests have also been lost.
Free clone MariaDB
Even before Oracle’s takeover of Sun, “Monty” Widenius and David Axmark had developed a MySQL clone called MariaDB in a new company. He is still completely free and is now being looked after by the MariaDB Foundation. MySQL and MariaDB diverge more and more because Oracle and the MariaDB developers work independently. Up to MySQL 7, however, the two were still binary compatible, so that, for example, database files could be exchanged directly between them. The major Linux distributions have now switched to MariaDB for licensing reasons, as have the Wikimedia Foundation and Google. At least in the search queries, there has been a constant high level of interest in MariaDB since the end of 2017, while this indicator in MySQL now only makes up less than a quarter of the 2004 peak. Market share figures seem unreliable. MySQL is in 2nd place at db-engines.com behind Oracle, MariaDB in 12th place. Datanyze comes for MySQL to a market share of 15.6 percent and for MariaDB to 0.8 percent. Both sites primarily consider the use of databases on websites.
Whether MySQL or MariaDB: What they have in common that made MySQL attractive 25 years ago: the simple introduction to working with a real database. Who no longer has to shy away from comparison with commercial and free competitors.