Repository navigation
Batch Migration & Multi Threading
The Batch Migration tab enables migrating dozens, hundreds, or thousands of mailboxes concurrently in a single high-speed session with adaptive multi-threading, intelligent CSV parsing, and enterprise cloud authentication.
Mundofy MailMigrator includes an asynchronous multi-threaded orchestrator:
- Worker Slider: Adjust parallel workers from 1 to 16 threads (default: 4).
-
Throughput Optimization:
- 1β2 Workers: Ideal for metered connections or servers with strict IP rate limits.
- 4β8 Workers: Recommended for standard broadband and fiber connections migrating corporate domains.
- 8β16 Workers: Recommended for high-bandwidth dedicated servers or cloud VMs handling large domain migrations.
MailMigrator supports both standard server credentials and enterprise tenant-wide modern authentication:
- Set the default Source and Destination server hosts and ports.
- Passwords for each mailbox are supplied via the accounts table or CSV import.
- Select Microsoft 365 as the protocol.
- Enter your Tenant ID (Directory ID), Application (Client) ID, and Client Secret (see Modern OAuth2 Guide for Azure App Registration steps).
- MailMigrator automatically handles per-mailbox token generation dynamically. User passwords are not required!
- Select Google Workspace as the protocol.
- Click Browse and load your Google Cloud Service Account JSON key configured with Domain-Wide Delegation.
- MailMigrator signs JWT assertions and impersonates each target mailbox subject automatically without passwords.
When Microsoft 365 or Google Workspace is selected:
- Username column headers automatically update to Source Mailbox (Email) or Dest Mailbox (Email).
- Password column headers update to Source Auth or Dest Auth displaying a clean
π Admin OAuth2badge. - Password cell text editing is automatically disabled to eliminate operator confusion.
The batch account table supports four flexible input methods:
Click π Import CSV to import any spreadsheet. The parser automatically detects headers and accommodates multiple enterprise formats:
-
2-Column Email Mapping:
source@domain.com, dest@newdomain.com(ideal for enterprise tenant-to-tenant migrations without passwords). -
1-Column Mailbox List:
user@domain.com(ideal for exporting raw user lists directly from Google Admin or Microsoft 365 Admin centers). -
4-Column Classic:
SourceUser, SourcePassword, DestUser, DestPassword(for standard password-based IMAP/POP3 migrations).
Copy columns directly from Microsoft Excel, Google Sheets, or Notepad and click π Paste Clipboard.
Click π Load ImapCopy.cfg to load config files (a complete starter template is provided at Dist/ImapCopy.cfg). Server settings, concurrency, security flags, and all account pairs are automatically loaded into the table.
- β Add Account: Inserts a new blank row into the DataGrid.
- β Remove Selected: Deletes the currently highlighted row.
- π Quick Row Delete: 1-click red trash button on each row.
-
Keyboard Delete: Highlight any row and press the
Deletekey. - Inline Editing: Double-click any cell to modify email addresses or passwords.
Before executing a large migration:
- π Test All Credentials: Verifies connections and logins in parallel. Rows turn green (Ready) or red (Auth Failed).
-
π Check Quotas: Interrogates source and destination storage limits in parallel (RFC 2087 IMAP QUOTA & POP3 sizing). Rows display health badges:
- π’ Normal (
< 80%) - π‘ Warning (
80% β 94%) - π Critical (
95% β 99%) - π΄ Exceeded (
β₯ 100%) - π΅ Unlimited (Unmetered storage)
- π’ Normal (
- Pre-Flight Capacity Guard: If any destination mailbox lacks enough free capacity to receive the source mailbox contents, an alert warning is presented before transfer begins.
- Click βΆ Start Batch Migration.
-
Per-Account Pause & Resume:
- Need to inspect or adjust a specific account mid-migration? Click the βΈ Pause button on that row.
- Pausing an account immediately cancels its active network transfer and releases its worker slot so other queued accounts can proceed.
- Click βΆ Resume at any time to re-queue the account into the active batch without resetting overall progress.
-
Batch Re-Run (v1.4.0):
- If you need to perform a delta catch-up sync after DNS cutover, simply click βΆ Start Batch Migration again.
- All account progress bars, speeds, and counters automatically reset cleanly, and the deduplication engine skips previously transferred messages in seconds.
-
Native Sleep Prevention:
- MailMigrator automatically prevents the computer from sleeping during active batch migrations, ensuring unattended overnight transfers complete reliably.
GitHub Repository β’ Releases & Downloads β’ Issue Tracker
Version 1.6.0
- π€ Single Account Migration
- π₯ Batch Migration & Concurrency
- π Modern OAuth2 & Cloud Providers
- π Mailbox Quotas & Capacity Guard
- π macOS User Guide
- π» CLI & Headless Automation