Sign inSign up

fatihun/db-migrator

By fatihun

β€’Updated about 24 hours ago

A self-hosted database migration, validation, and reconciliation platform for engineering teams.

Image
Developer tools
Databases & storage
2

2.9K

fatihun/db-migrator repository overview

⁠DbMigrator

DbMigrator is a self-hosted multi-directional database migration and verification platform designed for engineering teams who need to migrate, transform, reconcile, and validate data across relational, NoSQL, and time-series databases with complete confidence.

Docker Image Size Website


⁠⚑ Quick Start with Docker

Run DbMigrator locally using the official Docker Hub image fatihun/db-migrator:latest:

⁠Using Docker Run:
docker run -d \
  --name db-migrator \
  -p 5000:5000 \
  fatihun/db-migrator:latest

Open http://localhost:5000⁠ in your browser.

⁠Using Docker Compose:

Create a docker-compose.yml file:

services:
  db-migrator:
    image: fatihun/db-migrator:latest
    container_name: db-migrator
    restart: unless-stopped
    environment:
      ASPNETCORE_ENVIRONMENT: Production
      ASPNETCORE_URLS: http://+:5000
      ConnectionStrings__DbMigratorDb: "Data Source=/app/data/db-migrator.db"
      Encryption__Key: "YOUR_BASE64_32BYTE_KEY_HERE"
    ports:
      - "5000:5000"
    volumes:
      - db-migrator-data:/app/data
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:5000/health || exit 1"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  db-migrator-data:

Note: Replace YOUR_BASE64_32BYTE_KEY_HERE with a secure 32-byte base64 key.
You can generate one with: openssl rand -base64 32

Run:

docker compose up -d

β πŸš€ Key Features

  • Multi-Directional Migration Engine: High-throughput data migration across Relational (PostgreSQL, MySQL, MariaDB, MSSQL), NoSQL (MongoDB), and TimeSeries (TimescaleDB, InfluxDB v2) databases.
  • Automated Validation & Readiness Score: Eliminate post-cutover surprises with automated record count verification, field-level diff inspection, and a calculated 0%–100% Data Integrity Score.
  • Visual 7-Stage Migration Wizard: Effortlessly configure end-to-end migrations without writing code β€” from connection setup and schema discovery to mapping, ID strategies, and alerts.
  • Real-Time Schema Drift Detection: Instantly identify structural discrepancies between live database schemas and project mappings with one-click automatic reconciliation.
  • Automated Job Scheduling & Recovery: Run hands-free recurring migrations using cron schedules with Quartz.NET background execution, automatic restart recovery, and paginated audit history logs.
  • Smart Data Transformers & Nested Mapping: Reshape data on the fly β€” map nested document fields, array elements, and apply inline value transformations (ToUtcDate, RegexReplace, IntToBool).
  • MongoDB Native ObjectId & Legacy ID Tracking: Seamlessly generate native BSON ObjectId target keys while preserving original source primary keys in legacyId.
  • Instant Webhook Alerts & Error Diagnostics: Get real-time HTTP webhook notifications on migration status, inspect detailed error logs for failed runs, and download audit-ready HTML/PDF reports.
  • Live SignalR Streaming Metrics: Track real-time batch progress meters, throughput speeds, and live execution logs over WebSocket connections.

β πŸ“Š Supported Database Matrix

Database EngineCategorySource SupportTarget SupportTimeSeries SupportNotes
PostgreSQLRelationalβœ…βœ…βŒKeyset & OFFSET pagination
MySQLRelationalβœ…βœ…βŒLIMIT-OFFSET cursor
MariaDBRelationalβœ…βœ…βŒLIMIT-OFFSET pagination, auto table creation
MSSQLRelationalβœ…βœ…βŒOFFSET-FETCH cursor, auto table creation
MongoDBDocumentβœ…βœ…βœ…Cursor streaming, TimeSeries collections
TimescaleDBTimeSeriesβœ…βœ…βœ…Hypertables, chunk-aligned time-ordered writes
InfluxDB v2TimeSeriesβœ…βœ…βœ…Flux queries, Line Protocol batch writes

⁠🌐 Official Website & Documentation

For detailed guides, changelog, and migration tutorials, visit our official website:
πŸ‘‰ https://db-migrator.com⁠


⁠License

DbMigrator Free Use License

Copyright (c) 2026 Fatih Ünlü All rights reserved.

This software and associated documentation files (the "Software") are proprietary to the copyright holder.

Permission is granted, free of charge, to any person or organization to download, install, and run the official Docker image published at https://chstno1.isgood.host/r/fatihun/db-migrator⁠ for personal or commercial use, subject to the terms of this license. No separate permission or license fee is required for such use.

Copies necessary to download, deploy, run, and back up the official image within your own infrastructure are permitted. Configuring the application through its supported settings and interfaces is permitted and does not constitute modification of the Software under this license.

Ownership of the Software and its source code remains with the copyright holder. This license grants no right to access or receive the source code. Except for the copies and configuration expressly permitted above, you may not copy, modify, create derivative works of, redistribute, publish, sublicense, or sell the Software, its source code, or its Docker image without prior written permission from the copyright holder.

Keep this license and all copyright notices with any permitted copies. All rights not expressly granted are reserved. Nothing in this license restricts rights that cannot be excluded under applicable law.

Third-party components remain subject to their respective licenses.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Tag summary

Content type

Image

Digest

sha256:6fa2bdac8…

Size

127 MB

Last updated

about 24 hours ago

docker pull fatihun/db-migrator