Percona Server vs. MariaDB: Features, Compatibility, and Performance Compared to MySQL
The article examines the impact of Oracle's acquisition of MySQL, introduces Percona XtraDB and Percona Server, outlines MariaDB's origins and compatibility, compares their storage engines, performance, and version histories, and provides resources for further comparison of these MySQL alternatives.
After Oracle acquired MySQL, many users expressed concerns about the future of the open‑source database, fearing that Oracle might treat MySQL as a burden rather than an asset; large internet companies such as Taobao have migrated from Oracle to MySQL, and the community has created forks to avoid potential closed‑source risks.
Percona
Before introducing Percona, it is necessary to discuss the XtraDB storage engine, which is an enhanced version of InnoDB; MySQL traditionally offers two main storage engines: MyISAM and InnoDB.
MySQL 4 and 5 used MyISAM as the default engine for each table. Starting with MySQL 5.5, the default engine switched to InnoDB, which provides transaction support, finer‑grained performance improvements, and higher reliability and safety compared with MyISAM.
Percona XtraDB is an enhanced InnoDB engine designed to better exploit modern multi‑core hardware and includes new features for high‑performance environments. XtraDB is fully backward compatible; in MariaDB it is identified as "ENGINE=InnoDB", so it can replace InnoDB without issues. XtraDB retains InnoDB’s robust ACID compliance and MVCC architecture while adding more parameters, extensions, and performance optimizations—up to 2.7 times more transactions per minute than the built‑in MySQL 5.1 InnoDB engine.
Percona Server, released by the leading MySQL consultancy Percona, is an independent database product that remains 100% compatible with MySQL and can switch its storage engine to XtraDB without code changes.
The Percona team states that Percona Server is the closest Oracle‑released version to the official MySQL Enterprise edition, distinguishing it from other forks that modify large portions of the core. A drawback is that Percona manages the code internally and does not accept external contributions, ensuring tighter control over included features.
Official website: http://www.percona.com/
MariaDB
MariaDB is led by Michael "Monty" Widenius, the original founder of MySQL, who sold MySQL AB to Sun for $1 billion; after Sun’s acquisition by Oracle, MySQL’s ownership transferred to Oracle. The name MariaDB comes from Widenius’s daughter, Maria.
MariaDB aims for full compatibility with MySQL, including APIs and command‑line tools, making it a drop‑in replacement. Starting with version 10.0.9, it uses XtraDB (codenamed Aria) in place of MySQL’s InnoDB.
In its early releases, MariaDB followed MySQL version numbers up to 5.5, allowing users of MariaDB 5.5 to experience all MySQL 5.5 features. Since the release of 10.0.0 on 12 November 2012, MariaDB no longer mirrors MySQL version numbers; the 10.0.x series builds on MySQL 5.5 and incorporates features ported from MySQL 5.6 as well as its own innovations.
Compared with MySQL 5.6, MariaDB offers richer performance, functionality, management, and NoSQL extensions, such as microsecond precision, thread pooling, sub‑query optimization, group commit, and progress reporting.
Official website: https://mariadb.org/
Percona OR MariaDB
Choosing between the two databases can be difficult; large companies are split—Taobao currently uses Percona 5.5.18, while Google and Wikipedia favor MariaDB. Which will dominate the future remains to be seen.
More reference material:
http://www.sobstel.org/blog/mysql-like-databases-comparison/
http://db-engines.com/en/system/MariaDB%3BMySQL%3BPercona+Server
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
Art of Distributed System Architecture Design
Introductions to large-scale distributed system architectures; insights and knowledge sharing on large-scale internet system architecture; front-end web architecture overviews; practical tips and experiences with PHP, JavaScript, Erlang, C/C++ and other languages in large-scale internet system development.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
