Databases

MariaDB

An open fork of MySQL by its original founders, protocol compatible with extra engines and features.

What it is

MariaDB was created by Monty Widenius, a MySQL co-founder, after Oracle acquired Sun in 2010. The aim was to keep a MySQL-like database open and community driven.

It is compatible with MySQL at the protocol and client level, so in many cases it can replace MySQL. Over time the versions diverged: MariaDB has its own engines (Aria, ColumnStore, Spider), system-versioned tables and Galera Cluster for multi-master replication.

In many Linux distributions (Debian, RHEL) MariaDB is the default MySQL-compatible database.

Use it when

  • You need a MySQL-compatible database without Oracle dependency.
  • A multi-master cluster on Galera.
  • Hosts and distributions where MariaDB is installed by default.

Avoid it when

  • You need full compatibility with the newest MySQL 8+ features: the versions have diverged.
  • Advanced extensions like PostGIS or pgvector: PostgreSQL.

Key concepts

Fork
An independent branch of the MySQL codebase.
Galera Cluster
Synchronous multi-master replication.
Storage engines
InnoDB, Aria, ColumnStore and others.
System-versioned tables
Row change history with point-in-time queries.

Example

A system-versioned table and a point-in-time query.

Interview questions

  1. 1. Why did MariaDB appear?

    After Oracle acquired Sun, the community and MySQL's founder worried about the project's openness. MariaDB was created as a free fork under a foundation.

  2. 2. Does MariaDB always replace MySQL unchanged?

    Often yes for simple apps, but newer versions differ in some functions, JSON types and system tables. Test before migrating.

  3. 3. What is Galera Cluster?

    Synchronous multi-master replication where every node accepts writes. It gives fault tolerance but adds commit latency.

Logos belong to their owners and are used for identification only. Icons: Simple Icons (CC0), Devicon (MIT).