David-Crty/databasement
David-Crty/databasement has 2,617 GitHub stars and 297 forks. GitHot measured +4 stars in 24 hours, +27 in 7 days, and +45 in 15 days. Last checked 2026-11-09 22:18 UTC. Last push 2026-11-01.
Self-hosted database backup manager with a web UI. Schedule, backup, and restore MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, MongoDB, SQLite & Redis to S3, SFTP, Samba or local storage. SSH Tunnel support.
可以做什么
- Multi-database support - Manage MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, MongoDB, SQLite, Firebird, and Redis/Valkey servers from a single interface
- SSH tunnel support - Connect to databases in private networks through a bastion/jump server with password or key-based authentication
- Remote agents - Back up databases in firewalled or isolated networks with no inbound port: a lightweight agent connects out over HTTPS, dumps locally, and uploads to your storage
- Automated backups - Schedule recurring backups on daily or weekly intervals. Flexible retention policies: simple time-based (days) or GFS (grandfather-father-son)
实测星标增长
- 24小时
- +4
- 7天
- +27
- 15天
- +45
- 1个月
- 更新延迟
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.md
原文A modern, self-hosted database backup management application for MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, MongoDB, SQLite, Firebird, and Redis.
Live Demo · Documentation · llms.txt · Report Bug or Request Feature
Features
- Multi-database support - Manage MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, MongoDB, SQLite, Firebird, and Redis/Valkey servers from a single interface
- SSH tunnel support - Connect to databases in private networks through a bastion/jump server with password or key-based authentication
- Remote agents - Back up databases in firewalled or isolated networks with no inbound port: a lightweight agent connects out over HTTPS, dumps locally, and uploads to your storage
- Automated backups - Schedule recurring backups on daily or weekly intervals. Flexible retention policies: simple time-based (days) or GFS (grandfather-father-son)
- Multiple compression options - gzip, zstd (20-40% better compression), or encrypted (AES-256 for sensitive data)
- Cross-server restore - Restore snapshots from production to staging, or between any compatible servers
- Scheduled restores - Refresh a target database on a recurring schedule (e.g. nightly prod → staging) by replaying the latest completed snapshot
- Built-in data browser - Open Adminer in-app to inspect MySQL, PostgreSQL, and SQLite servers (admin-enabled, role-gated)
- Flexible storage - Store backups locally, on S3-compatible storage (AWS S3, MinIO, etc.), Azure Blob Storage, Samba/SMB shares, or remote servers via SFTP/FTP
- Real-time monitoring - Track backup and restore progress with detailed job logs
- Failure notifications - Get alerted via Email, Slack, Discord, Telegram, Pushover, Gotify, or Webhook when jobs fail
- Team ready - Multi-tenant organizations with isolated workspaces, role-based access control, OAuth/SSO login (Google, GitHub, GitLab, OpenID Connect), and optional two-factor authentication
- Automation - REST API and MCP server for scripting, CI/CD, and AI assistant integration
- Simple deployment - Single Docker container with built-in web server, queue worker, and scheduler
Try it out! Explore the live demo to see Databasement in action before installing.
Self-Hosting
Databasement is designed to be self-hosted. We provide several deployment options:
| Method | Description | Guide |
|---|---|---|
| Docker | Single container deployment | View Guide |
| Docker Compose | Multi-container setup with external database | View Guide |
| Kubernetes + Helm | For Kubernetes clusters | View Guide |
| Native Ubuntu | Traditional installation without Docker | View Guide |
Quick Start
# Run the container
docker run -d \
--name databasement \
-p 2226:2226 \
-e DB_CONNECTION=sqlite \
-e DB_DATABASE=/data/database.sqlite \
-e ENABLE_QUEUE_WORKER=true \
-v ./databasement-data:/data \
davidcrty/databasement:1
Open http://localhost:2226 and create your first admin account.
Note: The container automatically handles volume permissions. You can use
PUIDandPGIDenvironment variables to match your system's user/group IDs.
For production deployments, see our configuration guide for environment variables and best practices.
Supported Database Versions
| Engine | Supported Versions | CLI Tool | Restore |
|---|---|---|---|
| MySQL | 5.5, 5.6, 5.7, 8.x, 9.x, 26.x | mysqldump |
Yes |
| MariaDB | 5.x, 10.x, 11.x, 12.x | mariadb-dump / mysqldump |
Yes |
| PostgreSQL | 12, 13, 14, 15, 16, 17, 18 | pg_dump v16 / v18 |
Yes |
| SQL Server | 2017, 2019, 2022, Azure SQL | sqlpackage (.dacpac) |
Yes |
| MongoDB | 4.2, 4.4, 5.0, 6.0, 7.0, 8.0 | mongodump / mongorestore |
Yes |
| SQLite | 3.x | sqlite3 .backup |
Yes |
| Firebird | 3.x, 4.x, 5.x | gbak v5 |
Yes |
| Redis | 2.8+ | redis-cli --rdb |
No |
| Valkey | 7.2+ | redis-cli --rdb |
No |
See the Database Servers documentation for version-specific backup and restore details.
Automation
Databasement can be managed programmatically through its REST API and MCP server, enabling integration with scripts, CI/CD pipelines, and AI assistants.
- REST API - Full API for managing servers, backups, and restores. See the API documentation.
- MCP Server - Connect AI assistants (Claude Code, Cursor, VS Code Copilot, etc.) to manage backups through natural language. See the MCP documentation.
Documentation
Full documentation is available at david-crty.github.io/databasement.
For LLMs and AI assistants, the documentation is also published in the llmstxt.org format:
- llms.txt — index of all documentation pages
- llms-full.txt — full documentation content in a single file
Issues & Feature Requests
Found a bug? Please open an issue with reproduction steps.
Have an idea for a new feature? Start a discussion first so we can evaluate together whether it fits the project scope.
Contributing
Contributions are welcome! Before submitting a pull request, please:
- Check existing issues and discussions to avoid duplicates
- For significant changes, open an issue first to discuss the approach
- Follow the development guide for setup instructions
Small fixes (typos, documentation improvements) can be submitted directly as PRs.
AI agent files come from Laravel Boost. The Boost section of CLAUDE.md and the skills in .claude/skills/ are regenerated by composer update (php artisan boost:update), so don't edit them by hand. Custom skills live in .ai/skills/ and custom guidelines in .ai/guidelines/; Boost links them into .claude/skills/ on the next update.
Security
If you discover a security vulnerability, please report it responsibly. See SECURITY.md for details.
License
Databasement is open-source software licensed under the MIT License.
探索相关项目
Asabeneh/30-Days-Of-Python
30 Days of Python 编程挑战是一份循序渐进的指南,用于在 30 天内学习 Python 编程语言。这项挑战可能需要超过 100 天。请按自己的节奏进行。这些视频或许也有帮助:https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,486 星标grafana/grafana
开放且可组合的可观测性与数据可视化平台。可对来自 Prometheus、Loki、Elasticsearch、InfluxDB、Postgres 等众多数据源的指标、日志和追踪进行可视化。
77,790 星标redis/redis
对于正在构建实时数据驱动应用的开发者而言,Redis 是首选、速度最快且功能最丰富的缓存、数据结构服务器和文档与向量查询引擎。
77,332 星标apache/superset
Apache Superset 是一个数据可视化与数据探索平台
75,455 星标