Sometimes, dues to server hard limits, some webmasters are unable to migrate WordPress from one to another hosting using backup plugins like UpdraftPlus or BackupBuddy. This scenario is disastrous for a WordPress user, drawing unwanted site downtimes. I had faced the same situation when I tried some weird hosts with high restrictions on server resources. I tried UpdraftPlus to backup and migrate WordPress from old to new host, but failed. Meanwhile I discovered that on the new server,requirements for the plugin was not met.
There are the following important things that are required for a backup plugin to work properly;
- PHP Memory Limit – at least 128MB (256MB recommended)
- max execution time – at least 30 sec
- I/O limit – 2.5mbps
- CPUs – at least 2
If any of the server, from where you are moving or to where you are moving, is incompatible to the WordPress backup plugins, you will not be able to process migration.
So, the ultimate way to transfer WordPress from one to another hosting is, transferring it manually. And as a bonus your host will not suffer any downtime, if you transfer it manually.
Step 1 – Copy files from one to another server
This is the first task. You have to copy entire WordPress directory to the new web host. It can be done in two ways;
=> via MultCloud
We have written a detailed post on “how to transfer file between two hosts using MultCloud” for free
OR
=>Transfer files from one to another server => via FTP / File manager
Transfer files from one to another server => via FTP / File manager ====>>>> Download files to your computer
WordPress directory contains many thousands to many lacs of files in its root and subfolders. If we upload all files in the uncompressed form, it may take hours to finish. Better is to compress the whole WordPress folder. Almost every host offers zip/unzip feature in its file manager, with which it is damn easy to create a compressed zip file of a several thousands files.
How to compress and download files
in cPanel hosting
- Click on File manager and enter into WordPress directory
- Select all files and click on compress button
- Select compress method “Zip” and give a name to your to be created compressed zip file
- Download the created zip file to your computer
if your hosting panel doesn’t have zip/unzip feature, then use this guide how to zip unzip file using SFTP
Transfer files from one to another server => via FTP / File manager ====>>>> Upload files to new server
After that login to your new hosting control panel and upload the zip file to new server. You can do it in two ways;
>>>>>>With the help of hosting file manager
If you are using a cPanel hosting, then it is the best way to upload a big file using cPanel file manager
>>>>>>>>via FTP
If your hosting doesn’t have a good file manager or doesn’t have it at all, you can upload file with the help of FTP
Watch how to use FTP – This video is a complete guide
Transfer files from one to another server => via FTP / File manager ====>>>> Extract the files on the new hosting server
After uploading the zip file, you need to extract it so that all WordPress files and folders can be deployed as in old server
You can extract zip file in two ways;
>>>with Hosting file manager
If you are using cPanel, you will be good to go. You can easily uncompress a large zip file using uncompress option of hosting file manager
OR
>>>>with PHP
If your hosting file manager doesn’t have option to unzip files, you can use this very easy way to unzip zip file using PHP
How to extract zip file via PHP
OR
alternatively you can use SFTP to unzip package on new server
Step 2 – Create a database and a database user (on new hosting)
In your web hosting control panel create a database and a database user. If you are using cPanel, you can do it very easily. Go to Database wizard > Create a database > Create a database username and password > Give this user all privileges to database