Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. MySQL
  3. Test database

Test database

PLpgSQLv1.0.7

A sample MySQL database with integrated test suite for testing applications and database servers.

GitHubGitHub
4.4k stars2.7k forks0 contributors

What is Test database?

test_db is a realistic sample database containing approximately 300,000 employee records with 2.8 million salary entries, designed specifically for testing database-driven applications and MySQL server configurations. It provides a non-trivial dataset (167 MB) that simulates real-world data complexity while including intentional inconsistencies for data cleaning exercises.

Target Audience

Database administrators and developers who need to test MySQL applications, configurations, or data cleaning processes with a realistic, medium-sized dataset.

Value Proposition

Developers choose test_db because it offers a ready-to-use, realistic relational database with integrated validation scripts, saving time compared to creating synthetic test data. Its unique selling point is the preservation of original data inconsistencies, providing practical exercises for data cleaning and integrity testing.

Overview

A sample MySQL database with an integrated test suite, used to test your applications and database servers

Use Cases

Best For

  • Testing MySQL server performance and configuration with a non-trivial dataset
  • Practicing data cleaning and integrity validation on imperfect real-world-like data
  • Benchmarking database-driven applications against a standardized sample dataset
  • Learning or teaching relational database concepts with a realistic, pre-populated schema
  • Testing database partitioning features using the included partitioned table installation option
  • Validating data migration or ETL processes with a known, checksum-verified dataset

Not Ideal For

  • Projects testing non-MySQL database systems like PostgreSQL or MongoDB
  • Quick prototyping needing small, clean datasets without data inconsistencies
  • Applications requiring immediate, error-free data for production-like simulations without manual cleaning

Pros & Cons

Pros

Realistic Sample Data

Contains approximately 300,000 employee records with 2.8 million salary entries, providing a non-trivial 167 MB dataset that simulates real-world complexity for testing, as highlighted in the README.

Integrated Validation Suite

Includes test scripts like test_employees_md5.sql that verify data integrity through checksum comparisons and record counts, ensuring correct installation and reliability.

Data Cleaning Exercises

Preserves original data inconsistencies intentionally, offering practical learning opportunities for data cleaning, aligning with the project's philosophy stated in the README.

Partitioned Table Option

Offers an alternative installation with partitioned tables (employees_partitioned.sql), useful for testing MySQL partitioning features directly.

Cons

MySQL-Exclusive

Designed solely for MySQL, with no built-in support for other databases, limiting its use in multi-database or non-MySQL environments without significant conversion effort.

Intentional Data Flaws

The preserved inconsistencies, while educational, mean extra work is required for data cleaning if immediate, consistent data is needed, which can be a drawback for quick testing.

Setup Complexity with Newer MySQL

The README warns that MySQL client >=9.x requires adding the --commands parameter for installation, adding complexity and potential errors for users unaware of this change.

Frequently Asked Questions

Quick Stats

Stars4,398
Forks2,696
Contributors0
Open Issues0
Last commit14 days ago
CreatedSince 2015

Tags

#data-cleaning#database-testing#test-suite#mysql#data-validation#relational-database#sql

Built With

M
MySQL

Included in

MySQL2.6k
Auto-fetched 1 day ago

Related Projects

flywayflyway

Flyway by Redgate • Database Migrations Made Easy.

Stars9,717
Forks1,607
Last commit10 days ago
liquibaseliquibase

Main Liquibase Source

Stars5,491
Forks1,938
Last commit2 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub