Stop the database

April 13, 2026 · View on GitHub

dbeesly

image

"Dunder Mifflin, this is Pam."

Michael Scott: "I love the people of Dunder Mifflin. And I love their data. Having all this information about employees, departments, timesheets... it's like having a legally bound window into their souls.


MIT License Docker badge

Multi-database runnable containers with sample data setup for development and testing - Squix's sister project

Quick StartSupported DatabasesSchemaCommandsDevelopment

Note: All databases are pre-configured for local development with default credentials. Not for production use.


🚀 Quick Start

Prerequisites

  • Docker and Docker Compose installed

Basic Usage

# clone the repo
git clone https://github.com/eduardofuncao/dbeesly

# Start MariaDB (default choice)
cd mariadb && make start

# View logs and wait for initialization
make logs

# Stop the database
make stop

# Clean up containers and data
make clean

Connect with your favorite database tool

# Using squix
squix init dbeesly-mysql mysql 'root:myrootpassword@tcp(127.0.0.1:3306)/dundermifflin'
squix run "SELECT * FROM employees"

# Using mysql client
mysql -h 127.0.0.1 -P 3306 -u root -pmyrootpassword dundermifflin

# Using psql (PostgreSQL)
psql postgresql://postgres:myrootpassword@localhost:5432/dundermifflin

🗄️ Supported Databases

Each database comes with identical schema and sample data. Pick your flavor:

MariaDB / MySQL

cd mariadb && make start
# Connection: mysql://root:myrootpassword@localhost:3306/dundermifflin

PostgreSQL

cd postgres && make start
# Connection: postgresql://postgres:myrootpassword@localhost:5432/dundermifflin

SQLite

cd sqlite && make start
# Connection: file:sqlite/dundermifflin.sqlite

Oracle Database

cd oracle && make start
# Connection: oracle://system:MyStrongPass123@localhost:1521/XEPDB1

SQL Server

cd sqlserver && make start
# Connection: sqlserver://sa:MyStrongPass123@localhost:1433/dundermifflin

ClickHouse

cd clickhouse && make start
# Connection: clickhouse://default:@localhost:8123/dundermifflin

DuckDB

cd duckdb && make start
# Connection: file:duckdb/dundermifflin.duckdb

📋 Schema

All databases share the same Dunder Mifflin company structure:

Tables

departments - Company organization

employees - Staff records

timesheets - Work hours tracking

Sample Data

-- Quick peek at the staff
SELECT e.first_name, e.last_name, d.name as department
FROM employees e
JOIN departments d ON e.department_id = d.id
LIMIT 5;

-- Returns:
-- Michael | Scott   | Management
-- Dwight  | Schrute | Sales
-- Jim     | Halpert | Sales
-- Pam     | Beesly  | Reception
-- Ryan    | Howard  | Sales

🛠️ Commands

Each database directory has a Makefile with these commands:

CommandDescription
make startStart database container and initialize with sample data
make stopStop running container
make logsShow container logs (follow mode)
make cleanRemove container and delete all data

💻 Development

NixOS Support

To Enter a nix shell with all necessary binaries and drivers, run nix-shell in the root directory

📄 License

MIT License - see LICENSE file for details