Sign inSign up

fatihun/db-migrator

By fatihun

•Updated 5 days ago

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

Image
Developer tools
Databases & storage
2

1.4K

fatihun/db-migrator repository overview

⁠DbMigrator

DbMigrator is an open-source, 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 License


⁠⚔ 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, 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
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⁠

Tag summary

Content type

Image

Digest

sha256:b85d1062b…

Size

125 MB

Last updated

5 days ago

docker pull fatihun/db-migrator