Skip to main content
You can move your MainWP Dashboard to another server while retaining its settings, clients, child site records, and Add-on data. Transfer the complete WordPress installation, including the database, installed Add-ons, uploads, and MainWP encryption-key files.
If the Dashboard domain or subdomain changes, exclude wp_mainwp_wp and wp_mainwp_wp_sync from search-replace, using your actual table prefix. Replacements that match child site URLs can corrupt those addresses. Include these tables in the backup and migration; exclude them only from search-replace.
For a new domain or subdomain, with or without a server change, follow Move MainWP Dashboard to a New Domain or Subdomain. That guide covers the complete workflow and URL recovery. The Domain Changes During Migration section below also includes the exclusion command.

What You’ll Learn

  • How to prepare a complete Dashboard migration
  • How to protect child site URLs if the Dashboard address changes
  • How to verify retained data, Add-ons, and connections
  • How to troubleshoot sites that fail to reconnect
For the underlying WordPress transfer process, see Migrating WordPress.

Before Migration

Document Your Setup

Open MainWP > Sites > Manage Sites (/wp-admin/admin.php?page=managesites) and click Sync in the header before migration. You can export your site list for comparison, but that export does not replace a full Dashboard backup.

Create Backups

Create a fresh backup and verify that it completed with all required files and tables before starting migration. A database-only transfer does not preserve the entire Dashboard installation.
The database holds settings and records. Add-on code and encryption-key files are stored on disk. Missing key files can prevent the migrated Dashboard from decrypting connection keys and other encrypted data.

During Migration

Use a migration plugin, your host’s migration service, or a manual transfer that copies the full database and files. Confirm that the destination meets the MainWP Dashboard requirements. Update the destination’s database connection settings in wp-config.php if necessary. Some migration tools perform automatic URL replacement during export, import, or restoration. If the Dashboard URL changes, confirm the search-replace exclusions before starting. Excluding tables from the backup or transfer would omit the MainWP records you need to retain. Keep the original backup until verification is complete. After the move, use the destination as the active Dashboard and stop scheduled work on the old copy.

Domain Changes During Migration

A move from dash.example.com to mainwp.example.com is a Dashboard URL change even though both addresses use the same parent domain.
Exclude wp_mainwp_wp and wp_mainwp_wp_sync from every domain search-replace, replacing wp_ with your actual prefix. The exclusions protect child site records from matching replacements; the tables must still be migrated in full.
Run this preview against the restored Dashboard at the destination, substituting the full old and new Dashboard URLs and the actual table prefix:
Review the reported tables and replacements. If they match the intended change, remove --dry-run:
The example uses WP-CLI’s default table selection. Have your host review additional tables before expanding the operation, and configure the same exclusions for any separate automatic replacement. See the WP-CLI search-replace reference. Corruption depends on the searched text matching a child site address. For example, replacing example.com with example.net also changes client.example.com, even when that child site has not moved. For host-assisted or manual URL changes, and repairs after an incorrect replacement, use the domain and subdomain guide.

Keeping the Same Domain

If the complete Dashboard URL stays the same, a domain search-replace is not needed.
1

Prepare the destination

Restore the complete files and database, configure the server to serve the existing Dashboard domain, and verify its HTTPS certificate.
2

Update DNS

Point the Dashboard domain to the destination server. Allow for DNS caching before assessing access from different locations.
3

Check network access

If child site security rules restrict the Dashboard by server IP, update the relevant allowlists for the destination.
4

Verify connections

Follow the checks below. A complete migration preserves the connection data, so reconnect only sites that report an error after syncing.

After Migration

Verify Dashboard Access

1

Log in at the destination

Confirm that the Dashboard opens from the destination server and that settings, clients, and child site records are present.
2

Check server information

Open MainWP > Info > Server (/wp-admin/admin.php?page=ServerInformation) and review any requirements or configuration warnings.
3

Verify Add-ons and their data

Confirm that installed Add-ons are present and their settings were retained. For example, check your saved Pro Reports templates and schedules. A complete files-and-database migration does not require recreating this setup.

Reconnect Add-ons

Open MainWP > Add-ons > Manage Add-ons (/wp-admin/admin.php?page=Extensions) and check license activation. If licenses need reactivation at the new location, follow Activate Add-ons. License activation and the presence of your saved Add-on data are separate checks.

Verify Child Site Connections

1

Open Manage Sites

Go to MainWP > Sites > Manage Sites (/wp-admin/admin.php?page=managesites) and compare the child site URLs with your saved list.
2

Sync all sites

Click Sync in the header and review the results. On a successful sync, MainWP Child updates its stored Dashboard address automatically if it has changed.
3

Test site access

Use Jump to WP Admin on several child sites and confirm that their current data appears in the Updates view.

Reconnect Disconnected Sites

For a failed connection, check the child site’s URL, MainWP Child activation, copied encryption-key files, and any firewall rules that restrict the new Dashboard server. If search-replace changed site addresses, follow Fixing Corrupted Child Site URLs. After correcting the cause, use Reconnect in the affected site’s action menu under Sites > Manage Sites (/wp-admin/admin.php?page=managesites). Supply the current Unique Security ID if requested. MainWP Child has no editable Dashboard URL field, and a domain change does not require manually updating that address on every child site. For unresolved errors, see Troubleshoot Connection Problems.

Test Core Functionality

Verify the workflows you use, including sync, Jump to WP Admin, the Updates view, and Add-on settings. If you use scheduled reports or other scheduled actions, confirm that they are configured on the destination and no longer run from the old copy.

Self-Check Checklist

  • Complete files and database backup verified before migration
  • MainWP and Add-on tables, files, and encryption-key files copied
  • MainWP tables excluded from search-replace if the Dashboard URL changed
  • Dashboard accessible from the destination server
  • Settings, clients, child site records, and Add-on data retained
  • Add-on licenses checked
  • Child site URLs unchanged or repaired against the original list
  • Sync and Jump to WP Admin checks successful
  • Scheduled work runs only from the destination Dashboard