Migrate a site yourself
The manual path, for developers who want control over each step.
If you would rather do it yourself, this is the order that avoids the usual mistakes.
- Create the destination site
Same PHP version as the source, to remove one variable.
- Export the database
From the old host, with
mysqldumpor the panel's export. - Copy the files
rsyncover SSH where the old host allows it; otherwise SFTP. Uploads are usually the bulk of the transfer. - Import and rewrite URLs
Import the dump, then run search-replace for the temporary address.
- Test on the temporary address
Permalinks, forms, the checkout, and any hard-coded absolute URLs.
- Lower the TTL, then switch DNS
A day before the switch, drop the TTL to 300 seconds.
mysqldump -u user -p olddb > site.sql
rsync -avz --progress ./public/ site-user@sftp.webvuecloud.com:~/public/
wp db import site.sql
wp search-replace 'https://old.example.com' 'https://site-name.wvcloud.site' --skip-columns=guid
wp rewrite flush
Do not skip the dry run
Run search-replace with --dry-run first and read the table counts. Serialised data is the most common way a manual migration breaks silently.
