# mkdb ## Docs - [Clean up expired containers with mkdb cleanup](https://test.pzona.fun/commands/cleanup.md): mkdb cleanup removes expired database containers and their volumes. It also runs automatically before every other mkdb command you execute. - [Manage database credentials with mkdb creds](https://test.pzona.fun/commands/creds.md): Use mkdb creds get, copy, and rotate to retrieve, clipboard-copy, or regenerate database credentials. Connection strings are env-var formatted. - [Extend container lifetime with mkdb extend](https://test.pzona.fun/commands/extend.md): Use mkdb extend to add hours to a container's TTL and prevent automatic cleanup. Specify --hours to extend by more than the default one hour. - [mkdb info — inspect a database container](https://test.pzona.fun/commands/info.md): Display detailed information about a mkdb container: type, version, status, port, creation date, expiration, TTL remaining, and volume details. - [mkdb list — view all database containers](https://test.pzona.fun/commands/list.md): List all local database containers managed by mkdb in a formatted table. Filter by database type or running status. Short alias: mkdb ls. - [mkdb start — create a database container](https://test.pzona.fun/commands/start.md): Create a PostgreSQL, MySQL, or Redis container with mkdb start. Supports interactive mode and flag-based automation with TTL, volumes, and auth options. - [Stop and restart database containers with mkdb](https://test.pzona.fun/commands/stop-restart.md): Use mkdb stop to pause a container while preserving its data, and mkdb restart to bring it back. Both support interactive and --name flag modes. - [Manage database users with mkdb user](https://test.pzona.fun/commands/users.md): Create and delete additional database users with mkdb user create and mkdb user delete. Each user gets a generated password and connection string. - [Database connection string formats in mkdb](https://test.pzona.fun/configuration/connection-strings.md): mkdb generates environment-variable formatted connection strings for PostgreSQL, MySQL, and Redis. Learn the format and how to retrieve or rotate credentials. - [How mkdb stores data on your machine](https://test.pzona.fun/configuration/data-storage.md): mkdb stores container records, logs, credentials, and config files under ~/.local/share/mkdb. Learn what each file does and how to find it. - [Container TTL and automatic expiration in mkdb](https://test.pzona.fun/configuration/ttl.md): mkdb containers expire after a configurable TTL (default: 2 hours). Set TTL at creation, extend running containers, and understand automatic cleanup behavior. - [Database volume options in mkdb](https://test.pzona.fun/configuration/volumes.md): Choose between no persistence, a named volume, or a custom bind-mount path when creating a database. Volumes are preserved on stop and removed on cleanup. - [Install mkdb on macOS and Linux](https://test.pzona.fun/installation.md): Install mkdb using a pre-built binary, Go install, or build from source. Requires Docker and Go 1.21 or later on macOS or Linux. - [mkdb: manage local database dev containers](https://test.pzona.fun/introduction.md): mkdb is a CLI tool that creates and manages local Docker containers for PostgreSQL, MySQL, and Redis. Built for development workflows. - [Get started with mkdb in minutes](https://test.pzona.fun/quickstart.md): Create your first local database container with mkdb. Spin up PostgreSQL, MySQL, or Redis, get a connection string, and start developing in under five minutes. - [Troubleshooting common mkdb issues](https://test.pzona.fun/troubleshooting.md): Fixes for the most common mkdb errors: Docker not running, port conflicts, container name collisions, volume permission errors, and credential issues.