Origins and growth
MySQL was created in 1995 by Michael “Monty” Widenius and David Axmark at the Swedish company MySQL AB. The initial goal was a lightweight, fast relational database that could be easily integrated into web applications. Within a few years, the project evolved from a niche tool into a foundational component of the LAMP stack (Linux, Apache, MySQL, PHP/Perl/Python), the Open Source combination that powers a growing share of the world’s websites.
Version 3.23, released in 2001, introduced two features that changed the project’s profile: support for InnoDB tables and native replication.
InnoDB and ACID transactions
The InnoDB storage engine, developed by Heikki Tuuri at the Finnish company Innobase Oy, brings ACID transaction support (Atomicity, Consistency, Isolation, Durability), row-level locking and foreign keys with referential integrity to MySQL. Before InnoDB, MySQL only had MyISAM, which was fast for reads but lacked transactions and used table-level locking.
With version 4.0, currently being released, come native full-text search support on MyISAM tables, query cache to accelerate repeated reads, and significant improvements to the replication system.
Pluggable storage engine architecture
MySQL’s distinctive architectural feature is its pluggable storage engine design. The server separates the SQL layer — parsing, optimisation, connection handling — from the physical data storage layer. Each table can use a different engine: MyISAM for read-intensive workloads, InnoDB for transactional loads, HEAP (now MEMORY) for temporary in-RAM tables.
This separation allows database behaviour to be optimised table by table, a flexible approach that adapts to the heterogeneous requirements of web applications.
The database of the LAMP stack
MySQL adoption in the web context is driven by converging factors: the GPL licence allowing free use, straightforward installation on Linux, native integration with PHP through the mysql_connect() family of functions, and high performance on the read-heavy workloads typical of dynamic sites.
Shared hosting providers include MySQL by default. Web frameworks and applications — from phpBB to phpMyAdmin, from Slashcode to e-commerce systems — assume MySQL as their reference database. The combination with Apache and PHP on Linux creates a coherent, entirely Open Source ecosystem that drastically lowers the barrier to entry for web publishing.
The result is a database that, despite its limitations compared to solutions like PostgreSQL or Oracle in terms of advanced SQL features, dominates the web segment through speed, simplicity and ubiquity.
