Short answer: In Özkan Pakdil’s 2026 test of a Turkish motorcycle-classifieds application, MariaDB 10.3 had the lowest average and p95 response times among the reported results, while MySQL 8.0 had the lowest p99. PostgreSQL’s numbers came from an earlier run with different SQL on a shared cluster, so they do not establish a controlled three-way winner. The findings describe one application and setup—not which database is fastest in general.
What the mpazari benchmark tested
Özkan Pakdil published the comparison on September 23, 2026. It used a Spring Boot 4 application running as a Java 25 GraalVM native image, with hand-written SQL for a Turkish motorcycle classifieds site. The home page made roughly five simple database queries for listings, taxonomy, counts, and footer information.
As an Amazon Associate I earn from qualifying purchases.
The application database had 31 tables and about 111 MB of data, including 20,750 rows in motor_ilanlar. The test server was a Hetzner machine with 8 cores and 32 GB of RAM running Ubuntu 20.04. This is a small, fully resident dataset and a specific read-heavy request pattern; it does not model every production database workload. Pakdil’s benchmark describes the application and setup.
How the reported latency results compare
The main results below are those reported by Pakdil in 2026. The average and p95 values favor MariaDB, but MySQL had the best p99, so no engine led every latency measure.
#1 Best Overall
| Engine and version | Average response | p95 response | p99 response |
|---|---|---|---|
| MariaDB 10.3.39 | 125.52 ms | 129.73 ms | 182.13 ms |
| MySQL 8.0.42 | 132.40 ms | 139.43 ms | 150.07 ms |
| PostgreSQL 12 | 156.97 ms | 171.86 ms | 177.16 ms |
These are reported response-time figures, not a claim that the differences will recur on another machine or application. Average latency describes the overall mean; p95 and p99 indicate the response time at or below which 95% and 99% of observations fell, respectively. Tail percentiles matter when occasional slower requests are important, and here the p99 ordering differs from the average and p95 ordering. Pakdil’s benchmark reports the figures and the test context.
Why PostgreSQL is not a fair third-place result
The PostgreSQL numbers are useful as context for Pakdil’s deployment, but they are not an engine-pure comparison with the MariaDB and MySQL runs. PostgreSQL was measured during an earlier live-stack run using different SQL text. Its server cluster also hosted several sites. Differences in query text and shared-server activity can affect timings, so the figures cannot show that PostgreSQL is generally slower than either MySQL-family engine.
Rank #2
The reported request counts were 16,025 for MariaDB, 15,930 for MySQL, and 15,590 for PostgreSQL, with a reported failed-request rate of 0% for each. Peak database RSS was 141 MB for MariaDB, 411 MB for MySQL, and 1.7 GB for PostgreSQL. Because PostgreSQL’s cluster was shared across sites, its RSS cannot be attributed to this workload alone. The request counts and memory figures therefore need the same setup caveat as the latency comparison. Pakdil’s benchmark describes these conditions.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWhat the smaller CPU test adds—and what it does not
Pakdil also reports a separate 15-user test lasting two and a half minutes, with MariaDB and MySQL databases starting equally warm. Average and p95 latency were 125.12 ms and 130.26 ms for MariaDB, versus 130.25 ms and 136.35 ms for MySQL. Average and peak CPU were 0.2% and 1.0% for MariaDB, versus 6.6% and 9.0% for MySQL.
Pakdil cautions that the request rate was low and the database spent much of the test waiting. These CPU measurements describe that test’s conditions; they do not establish that MySQL generally consumes more CPU, or that the observed difference will matter at a higher traffic level. The tested MariaDB 10.3.39 is also an older generation than MySQL 8.0.42, and a comparison with a newer MariaDB release could produce different results. The benchmark report provides the test details.
Does MariaDB have an advantage for many simple queries?
In this particular application and version pairing, yes for average and p95 latency: MariaDB was modestly faster than MySQL in the reported results, and the narrower CPU test also measured lower MariaDB CPU use under its stated conditions. But MySQL had the better p99, and the results do not prove that MariaDB should be faster for all applications that send many simple queries. Query details, concurrency, data size, configuration, hardware, and software versions all shape the outcome.
Rank #4
Oracle’s MySQL Reference Manual, version 26.7, makes the general caution explicit: “Performance can vary depending on so many different factors that a difference of a few percentage points might not be a decisive victory. The results might shift the opposite way when you test in a different environment.” See Measuring Performance (Benchmarking), section 10.13.
Recommended Free Tools
How to make a database comparison useful for your application
A useful benchmark compares the work your application actually does under conditions resembling its intended deployment. PostgreSQL’s official pgbench documentation explains that pgbench can replay SQL sequences across concurrent sessions, calculate transaction rates, and use custom script files. It recommends tests lasting at least a few minutes and multiple runs to assess reproducibility. The same principles apply when building a test with another tool.
- Replay representative work. Include the application’s real reads, writes, joins, and transactions rather than using only a generic benchmark or a handful of easy queries.
- Measure both typical and slow responses. Record average latency and tail percentiles such as p95 and p99; the fastest average does not necessarily mean the best tail latency.
- Record load and outcomes. Include concurrent clients, throughput, data scale, CPU, memory, failed requests or transactions, and whether the data was warm or cold.
- Keep the comparison controlled. Record engine versions, configuration, hardware, operating system, and SQL text. Use equivalent queries and avoid comparing a dedicated server against a shared cluster as if conditions were identical.
- Repeat the runs. Multiple runs help show whether a small timing difference is consistent or simply variation between tests.
- Check application compatibility separately. Test the actual SQL behavior, connectors, ORM, framework, and database features your application depends on; speed alone does not establish a safe migration.
Compatibility is a migration question, not a benchmark score
A 2025 MariaDB Foundation survey reported that over 70% of respondents had encountered no MySQL compatibility issues. Other respondents reported issues involving performance, SQL behavior, connectors, and ORM or framework compatibility. That is respondent experience, not a guarantee that a particular application can move between MySQL and MariaDB without changes. Validate the application’s own queries, drivers, framework support, and required features before deciding. MariaDB Foundation’s 2025 survey provides the survey context.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




