DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
VGSources
Blog

How to Migrate a WooCommerce Store to a New Host Without Losing Orders

Move WooCommerce safely: back up files and the database, prepare a compatible host, restore and test the store, handle URLs without breaking serialized data, then switch DNS with a rollback plan.
Length12 min Posted Quest giverVGSources Team
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Move a WooCommerce store by treating it as a controlled WordPress migration: back up every file and the complete database, prepare a compatible destination, restore both, update configuration and URLs only when required, run WooCommerce’s pending database updates, test the store before DNS changes, then cut over and monitor. Keep the old installation and an untouched backup until the new store has passed acceptance checks.

Choose the migration approach before touching the live store

The right method depends on how much control you need, how comfortable you are with server tools, and how many orders arrive during the move. A small catalog with a quiet checkout can tolerate a short maintenance window. A busy store needs a write freeze or a documented final database-delta process.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Approach Best for Advantages Risks and trade-offs
Manual files plus SQL Administrators who can use hosting panels, SFTP, SSH, or a database client Full visibility, repeatable backups, and no dependency on a migration plugin More opportunities for permission, import, timeout, and configuration errors
Migration plugin Owners who prefer a guided interface and the source and destination support the same tool Convenient packaging and, in some products, serialized-data handling Large sites may hit upload, PHP-memory, or timeout limits; plugin compatibility must be verified
WP-CLI SSH-enabled servers and repeatable or scripted moves Fast, automatable exports, imports, searches, and checks Requires command-line access and careful shell/database credentials
Managed migration service Stores that need staging, backups, monitoring, or operational help Support with server configuration and cutover planning Less direct control; confirm exactly what is backed up, tested, and handed over

WordPress’s migration guidance says that moving to another server does not require reinstalling WordPress. The essential sequence is to copy the site files, import the database, and adjust wp-config.php when the destination credentials differ.

Inventory the store and define a change freeze

Create a written inventory before taking a backup. It becomes your compatibility checklist and your rollback reference.

#1 Best Overall
Seagate 2TB Portable Hard Drive | USB 3.0 (STGX2000400) | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
  • Easily store and access 2TB to content on the go with the Seagate Portable Drive, a USB external hard drive
  • Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop
  • To get set up, connect the portable hard drive to a computer for automatic recognition no software required
  • This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
  • The available storage capacity may vary.

Record the software and server state

  • WordPress and WooCommerce versions, including whether WooCommerce reports pending database updates.
  • PHP version, database engine and version (MySQL or MariaDB), enabled PHP extensions, memory limits, maximum upload size, and execution limits.
  • Web server type, rewrite configuration, HTTPS certificate method, CDN or reverse-proxy settings, and cache layers.
  • Every active plugin, theme, mu-plugin, custom integration, child theme, and code snippet. Note licenses or API keys that may be tied to a hostname or IP address.

Record commerce and operations

  • Payment gateways, test and live credentials, webhook endpoints, callback URLs, and fraud or 3-D Secure settings.
  • Shipping zones, tax configuration, currencies, checkout fields, coupons, subscriptions, downloadable products, and refund workflows.
  • WP-Cron or system cron jobs, WooCommerce scheduled actions, feeds, imports, inventory synchronizations, analytics tags, transactional mail, and support integrations.
  • Admin accounts and roles, customer login behavior, order numbering, the newest order ID, product count, and media-library count. These numbers provide an objective post-migration comparison.

Decide how to stop writes

For a low-traffic store, schedule a maintenance or order-freeze window and display a clear message before exporting the final database. Do not merely block the front page while leaving an alternate checkout, API, mobile app, or administrator able to create orders.

If orders must continue, plan a final delta: keep the source authoritative, record the exact export time and newest order ID, export or replicate changes created afterward, and reconcile them on the destination before opening checkout. A file-only copy cannot capture orders, customer changes, stock reductions, refunds, or subscriptions written to the database after the export.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Create two independent backups

Make one complete backup before preparation and a second immediately before cutover if the store remains writable. Keep one untouched copy away from both hosting accounts. Treat all copies as sensitive customer data.

Back up the complete WordPress directory

Copy the entire document root, not just the active theme. Include wp-content/uploads, plugins, themes, mu-plugins, language files, custom scripts, .htaccess, and any files outside the usual WordPress directories that the site uses. Preserve symbolic links where applicable and retain file timestamps if your transfer method supports them.

Export the complete database

Export every WordPress table, including tables created by WooCommerce, extensions, memberships, subscriptions, analytics, and custom code. A WP-CLI export is:

wp db export backup.sql

Run it from the WordPress directory while authenticated to the source installation. A hosting-panel or database-client export is acceptable when it includes all tables and does not silently omit large or custom tables. Record the dump size and its checksum, then test that the archive and SQL file can be opened.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Protect and verify the backups

  • Encrypt backups during transfer and storage. Do not place SQL dumps, archives, or copies of wp-config.php in a web-accessible directory.
  • Store one copy outside both the old and new hosts. A backup on the server that is failing is not an independent rollback.
  • Verify that the archive contains uploads and that the SQL dump includes recent orders, users, products, and WooCommerce tables.
  • Keep database credentials, API keys, payment secrets, and customer exports out of tickets, chat logs, and public repositories.

Provision a compatible destination server

Create the destination site, database, database user, HTTPS certificate, mail service, and cron service before importing anything. Match or exceed the source’s supported runtime rather than changing several major components at once.

Match the runtime and extensions

  • Use a PHP version supported by your installed WordPress, WooCommerce, theme, and plugins. Confirm required extensions such as the database driver, cURL, DOM, fileinfo, GD or Imagick, JSON, mbstring, and ZIP where your stack requires them.
  • Use a compatible MySQL or MariaDB version, character set, and collation. Preserve utf8mb4 settings when the source uses them.
  • Set adequate PHP memory, upload, post-size, and execution limits for the catalog and import size. Large SQL imports often fail because of a control-panel timeout rather than corrupt data.
  • Replicate web-server rewrite behavior. Apache needs the correct .htaccess handling; Nginx needs equivalent try_files and HTTPS rules.

Prepare services before the DNS switch

Issue the destination certificate and configure mail sending, DNS authentication, cron, object or page caching, CDN origins, and firewall rules. Create a separate staging or preview hostname if the provider offers one. Never let a payment gateway or webhook mistake a preview environment for live production.

Transfer files and import the database

Upload the files

Put the copied WordPress directory in the destination document root. SFTP, SSH transfer, or the host’s archive extractor is generally more reliable than uploading thousands of individual files through a browser. Check ownership and permissions so the web process can read WordPress files and write only the directories that need uploads, caches, or updates.

Rank #2
Seagate Portable 5TB External Hard Drive HDD – USB 3.0 for PC, Mac, PS4, & Xbox - 1-Year Rescue Service (STGX5000400), Black
  • Easily store and access 5TB of content on the go with the Seagate portable drive, a USB external hard Drive
  • Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop
  • To get set up, connect the portable hard drive to a computer for automatic recognition software required
  • This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
  • The available storage capacity may vary.

Create the destination database

Create an empty database and a user with the privileges WordPress needs. Note the database name, username, password, host, port, and table prefix. Import the SQL dump only after confirming the destination database is the one selected; importing into the wrong database can make a healthy migration appear empty.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
wp db import backup.sql

The WP-CLI db command can also check, query, create, and reset databases. Use those operations deliberately; a reset destroys the destination data.

Update wp-config.php

Edit only the values that changed: DB_NAME, DB_USER, DB_PASSWORD, DB_HOST, and, if applicable, $table_prefix. Preserve the authentication salts, charset, debug settings, and custom constants unless your deployment plan calls for a controlled change. Do not paste credentials into a public support request.

Handle domains and URLs without corrupting serialized data

When the domain and paths stay identical

If the database and public URL remain the same, preserve the existing home and siteurl values. You usually need only the file copy, database import, configuration update, rewrite check, and testing. Do not run a global replacement merely because the server changed.

When the domain, scheme, subdirectory, or hostname changes

Change URLs in an ordered, serialization-aware operation. WordPress stores some settings as serialized PHP values that include string lengths. A blind SQL replacement can leave those lengths wrong and break widgets, page-builder layouts, theme settings, and plugin configuration.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Take a fresh backup, run a dry run, and target the old URL exactly, including the scheme and path. With WP-CLI, a typical pattern is:

wp search-replace 'http://old.example' 'https://new.example' --all-tables-with-prefix --dry-run

Review the table and replacement counts, then repeat without --dry-run when the result is correct. Exclude columns such as guid only when your migration policy requires it; changing GUIDs can affect feed identity. A dedicated search-and-replace tool that understands serialized values is an alternative. Do not use a plain SQL text replacement across the whole database.

Plan redirects and canonical behavior

For a domain change, create permanent redirects from every important old path to its corresponding new path, not just to the home page. Review canonical tags, robots rules, XML sitemaps, Open Graph URLs, image URLs, CDN hostnames, hard-coded API endpoints, and email links. Keep redirects active for as long as users and search engines need them.

Regenerate WordPress rewrites and caches

After the destination responds correctly, sign in to WordPress and open Settings → Permalinks. Click Save Changes without changing the structure; this regenerates rewrite rules. On Apache, inspect .htaccess. On Nginx, confirm the equivalent server-block rules are loaded.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Seagate Portable 1TB External Hard Drive HDD – USB 3.0 for PC, Mac, PlayStation, & Xbox, 1-Year Rescue Service (STGX1000400) , Black
  • Easily store and access 1TB to content on the go with the Seagate Portable Drive, a USB external hard drive.Specific uses: Personal
  • Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop. Reformatting may be required for Mac
  • To get set up, connect the portable hard drive to a computer for automatic recognition no software required
  • This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
  • The available storage capacity may vary.

Purge page, object, opcode, CDN, and host-level caches after the import. Clear any cache that still points to the old origin. Verify that logged-in users, cart pages, checkout, account pages, and AJAX or REST requests bypass inappropriate full-page caching.

Run WooCommerce and WordPress database updates

Log in to the destination dashboard and check WooCommerce’s status screen for pending database updates. WooCommerce’s command-line interface supports WooCommerce 3.0.0 and later. When updates are pending, run:

wp wc update

This is useful for busy stores because it avoids an interactive administrator timeout, but take a database backup first and run it while the store is not processing orders. Confirm that the command completes successfully, then review WooCommerce status, scheduled actions, logs, and any extension-specific upgrade notices.

Do not use a migration as an excuse to perform unrelated plugin, theme, PHP, or database upgrades. If an upgrade is necessary, record it as a separate change so a failure has a clear cause.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Test the migrated store before changing DNS

Use a provider preview URL, a temporary hostname, a staging URL, or a hosts-file override that maps the domain to the new IP. A hosts-file test changes only your computer, so it lets you inspect the destination while public DNS still points to the old host.

Run functional acceptance tests

Area Checks Expected result
Public catalog Home page, product and category pages, variable products, related products, search, filters, images, and downloadable files Correct content, prices, variations, stock, thumbnails, and permissions load without 404s
Accounts Customer login, password reset, registration, account history, admin roles, and logout Existing users authenticate and see only the data their role permits
Cart and checkout Add, remove, quantity changes, coupons, shipping zones, tax calculation, guest checkout, and address validation Totals and available methods match the source configuration
Payments Gateway test mode where supported, authorization, failure response, 3-D Secure, refunds, and webhook callbacks Transactions reach the intended environment and orders receive the correct status
Orders and fulfillment Order creation, notes, stock reduction, emails, downloadable permissions, subscriptions, and refunds Records, notifications, inventory, and scheduled renewals behave as expected
Operations Scheduled actions, cron, imports, feeds, analytics, webhooks, search indexing, backups, and cache purges Background jobs run on the new server and logs show no recurring errors
Presentation and security HTTPS on desktop and mobile, mixed-content scan, redirects, robots, sitemap, headers, and performance cache No certificate warnings, broken assets, unintended indexing, or stale-origin requests

Compare data, not just pages

  • Compare product, variation, category, customer, coupon, and order counts.
  • Compare the newest order ID and the timestamp of the newest order. For a frozen store, they should match exactly.
  • Open several historical orders, refunds, subscriptions, and downloadable permissions.
  • Check media dimensions and representative files from old and new uploads.
  • Review PHP, web-server, database, WooCommerce, and payment logs while performing the tests.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Plan the DNS cutover and rollback

Lower DNS TTL ahead of time

Lower the domain’s DNS time-to-live before the migration window when your DNS provider permits it. A lower TTL can make many resolvers notice the new record sooner, but it cannot force resolvers that retain cached data beyond the stated value.

Perform the final synchronization

Put the source into maintenance or order-freeze mode, disable scheduled imports that could write data, and take the final database export. If you use a final-delta process, record the cutoff time and newest order ID, apply the delta to the destination, and verify counts before opening checkout.

Change the records

Update the A and AAAA records, CNAME, or nameservers according to the design. Keep the old host online. Do not delete its database, files, certificates, cron jobs, or payment configuration until the new site has remained healthy through DNS propagation and a rollback copy is verified.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Monitor after cutover

Watch access logs, PHP and database errors, uptime, failed payments, order creation, email delivery, cron execution, webhook responses, CPU, memory, disk space, and cache hit behavior. Test from more than one network and device. Continue comparing incoming orders with the source’s final records until traffic has settled.

Rank #4
Seagate Portable 4TB External Hard Drive HDD – USB 3.0, 1-Year Rescue | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
  • Easily store and access 4TB of content on the go with the Seagate Portable Drive, a USB external hard drive.Specific uses: Personal
  • Designed to work with Windows or Mac computers, this external hard drive makes backup a snap just drag and drop
  • To get set up, connect the portable hard drive to a computer for automatic recognition no software required
  • This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable
  • The available storage capacity may vary.

Near-zero-downtime migrations for high-volume stores

A high-volume store cannot safely rely on a single file-and-database copy while the source remains writable. Use one of these controlled patterns:

  1. Prepare and test the destination from a consistent backup.
  2. Keep the source live while transferring large static files.
  3. Replicate or export database changes, or schedule a short final write freeze.
  4. At cutover, stop checkout and integrations, capture the final source state, apply the final delta, and reconcile order IDs, stock, refunds, and customer changes.
  5. Switch DNS only after the destination contains every accepted write.

Document who can authorize the freeze, who verifies the newest order, and who can roll DNS back. “Near-zero downtime” is an operational process, not a setting that a hosting panel can guarantee.

Troubleshoot common migration failures

Database connection errors

Recheck the database name, user, password, host, port, privileges, and table prefix in wp-config.php. Confirm the database service is running and that the destination user can connect from the web server. Do not assume localhost is correct; some hosts require a socket path or a separate hostname.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

404 errors on pages or products

Resave permalinks, verify Apache or Nginx rewrite rules, check that the document root is correct, and inspect redirect rules for an old path. A successful home page does not prove that rewrites are working.

Missing images or downloads

Confirm that wp-content/uploads was copied completely, file paths and case match, permissions allow reads, and the CDN or object-storage origin points to the destination. Regenerate thumbnails only after verifying that the originals exist.

Broken layout or plugin settings after URL replacement

Restore the untouched database backup if a naive replacement was run. Repeat with a serialization-aware tool and a dry run. Check builder, widget, theme, and extension settings before reopening the store.

Checkout or webhooks fail

Verify HTTPS, site and home URLs, gateway mode, callback and webhook URLs, firewall rules, outbound cURL access, server time, and the payment provider’s allowed domains or IP restrictions. Ensure a preview hostname has not been registered as the live callback target.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Emails or scheduled actions do not run

Confirm cron is configured on the new server, disable conflicting duplicate cron jobs, configure authenticated mail delivery, and inspect WooCommerce scheduled-action logs. A page visit may trigger WP-Cron on one host but not another, so use a real system cron where reliable timing matters.

Orders are missing or duplicated

Compare the source and destination newest order IDs and timestamps at the documented cutoff. If the source was writable during export, identify the missing interval, apply the final delta, and reconcile stock and payment status manually. Never “fix” the problem by inventing order records or replaying payment webhooks without checking gateway idempotency.

Secure and close the migration

  • Remove temporary archives, SQL dumps, installer scripts, phpMyAdmin exports, and preview files from web-accessible locations.
  • Rotate database passwords, SSH keys, API keys, webhook secrets, and payment credentials when they were exposed to temporary staff or transfer systems.
  • Review file ownership, writable directories, administrator accounts, SSH users, firewall rules, and unused plugins.
  • Confirm backups now run on the new host and that at least one restore has been tested.
  • Keep the old host and the untouched backup until DNS traffic has settled, post-cutover orders reconcile, and the rollback decision period has expired.

WordPress’s documented migration sequence is deliberately conservative: back up the directory and database, upload the files, import the database, update configuration when credentials change, handle URLs carefully, and test before committing to the new server. Following that sequence protects the records WooCommerce cannot recreate after the fact—orders, customer accounts, stock movements, refunds, and scheduled work.

Quick Recap

Bestseller No. 1
Seagate 2TB Portable Hard Drive | USB 3.0 (STGX2000400) | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
Seagate 2TB Portable Hard Drive | USB 3.0 (STGX2000400) | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable; The available storage capacity may vary.
$129.99
Bestseller No. 2
Seagate Portable 5TB External Hard Drive HDD – USB 3.0 for PC, Mac, PS4, & Xbox - 1-Year Rescue Service (STGX5000400), Black
Seagate Portable 5TB External Hard Drive HDD – USB 3.0 for PC, Mac, PS4, & Xbox - 1-Year Rescue Service (STGX5000400), Black
This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable; The available storage capacity may vary.
$219.99
Bestseller No. 3
Seagate Portable 1TB External Hard Drive HDD – USB 3.0 for PC, Mac, PlayStation, & Xbox, 1-Year Rescue Service (STGX1000400) , Black
Seagate Portable 1TB External Hard Drive HDD – USB 3.0 for PC, Mac, PlayStation, & Xbox, 1-Year Rescue Service (STGX1000400) , Black
This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable; The available storage capacity may vary.
$119.80
Bestseller No. 4
Seagate Portable 4TB External Hard Drive HDD – USB 3.0, 1-Year Rescue | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
Seagate Portable 4TB External Hard Drive HDD – USB 3.0, 1-Year Rescue | Everyday HDD storage. Plug-and-play backup. Windows & macOS. Adobe CC trial included. 1-Year Warranty
This USB drive provides plug and play simplicity with the included 18 inch USB 3.0 cable; The available storage capacity may vary.
$189.99

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Crashes, No Sound, or Screen Glitches?Free driver scan
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.