Percona pstress
Percona pstress is a free, open-source tool for testing concurrent database workloads and crash recovery.
What Percona pstress is
Percona pstress is a free, open-source tool for testing concurrent database workloads and crash recovery. It generates randomized transactions from options supplied by the user, creating load on either a single server or a cluster. Its documented uses include checking database features, regressions, and recovery behavior for MySQL, Percona Server, and Percona XtraDB Cluster. A multithreaded C++ workload generator works with a Bash driver that coordinates concurrency and recovery testing. The driver can stop and restart a server between steps, change server variables, and continue with the prior step’s data directory. Command-line controls include thread count, tables, records, transaction size, and SQL operation probabilities. By default, each trial directory saves the data directory, server error logs, thread logs, mysqld binaries, and test configuration. pstress runs on Linux in a self-hosted setup and is licensed under GPL-2.0. Building it requires CMake 2.6 or later, a C++ compiler 4.7 or later, and development files for the target MySQL version or fork. One limitation is that it does not verify whether successful queries return correct data, and its data checks are limited.
Good
- Free, open-source software under GPL-2.0
- Generates concurrent workload for a server or cluster
- Driver supports stop-and-restart recovery steps
- Trial directories preserve logs and configuration
Watch out
- Does not verify correctness of successful query results
- Requires CMake, a C++ compiler, and development files
- Self-hosted Linux deployment
Who it suits
pstress is suited to database developers and administrators who need self-hosted concurrency, regression, feature, or crash recovery testing for supported MySQL-based servers. It requires comfort with Linux builds and the listed development dependencies.
Verdict
pstress offers configurable workload and crash recovery testing for supported MySQL servers, with trial files that help preserve diagnostic details. Its limited data validation means it should not be treated as a check that successful queries returned correct results.
Plans and prices
From Percona pstress's own pricing page, checked 7 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| pstress | Free | Open-source database testing tool; source code and build instructions on GitHub |
The facts
Each one read from Percona pstress's own pages, with the date it was checked.
What it does
- Architecture
- pstress has a multithreaded C++ workload generator and a Bash driver script for concurrency and crash recovery testing.checked 7 Oct 2026
- Build requirements
- The README lists CMake 2.6 or later, a C++ compiler 4.7 or later, and development files for the target MySQL version or fork as build requirements.checked 7 Oct 2026
- Crash recovery
- The driver can stop and restart the server between test steps, vary server variables, and continue the workload using the previous step's data directory.checked 7 Oct 2026
- Diagnostics
- By default, pstress saves each trial directory with the data directory, server error logs, thread logs, mysqld binaries, and the test configuration.checked 7 Oct 2026
- Intended users
- Percona's article describes regression, feature, and crash recovery testing as pstress use cases.checked 7 Oct 2026
- License
- The repository identifies its license as GPL-2.0.checked 7 Oct 2026
- Limit
- Percona's article says pstress does not verify that successful queries return correct data, and its data checks are limited.checked 7 Oct 2026
- Purpose
- pstress is a probability-based open-source tool for concurrent database testing and crash recovery testing.checked 7 Oct 2026
- Server support
- The README gives build options for MySQL, Percona Server, and Percona XtraDB Cluster.checked 7 Oct 2026
- Testing uses
- The README says users can use it to test database features, regressions, and crash recovery.checked 7 Oct 2026
- Workload controls
- Command-line options control workload details such as thread count, tables, records, transaction size, and SQL operation probabilities.checked 7 Oct 2026
- Workload generation
- It generates random transactions based on user-provided options and can create concurrent load on a cluster or a single server.checked 7 Oct 2026
The company
- Founded
- 2006checked 28 Sep 2026
Alternatives to Percona pstress
- 1

Atlas
Free planOpen sourceWebAPILinuxmacOS8.3From $39 a month - 2

DataKitchen TestGen
Free planOpen sourceWebAPILinuxmacOS8.1From $100 a month - 3

Soda
Free planWebAPILinuxSelf-hosted7.5From $750 a month - 4
Avidemux
Free planOpen sourceWebLinuxmacOSWindows7.3Free plan - 5
pgroll
Free planOpen sourceLinuxmacOSSelf-hostedWindows7.3Free plan - 6

Bytebase Enterprise
Free planWebAPISelf-hosted6.8From $20 a month
