WordPress is the easiest to use & most feature-rich CMS for building an awesome website. For doing such complex tasks easily, WordPress uses a bit higher system resources than other CMS available in the market.
Sometimes users deploy their WordPress blog on a budgeted host. Initially, everything works good but soon or later WordPress starts to become unresponsive. Or it also happens when website receives huge traffic that your server can not handle. This reason is something that everyone wants to face. But at the same time, you do not want to lose any traffic.
So in such situation, it is time to migrate your website to a different host. If your website is on Weebly, I suggest you migrate away right now to WordPress. Here I have written a post on how to migrate from Weebly to WordPress.
But if you are already on WordPress and want to migrate your website to another host, here is how you can do it easily without losing any of your data.
Method 1 – Migrate WordPress blog Automatically (The Easy Way)
The easiest way to migrate your WordPress blog is to move everything including all your WordPress files and database directly to your new server. Other methods that I am going to mention in this article will require you to create a backup of your WordPress, download it and upload it to the new host. But in this method, you can directly move your WordPress installation from the old host to the new host.
WPvivid Backup Plugin
WPvivd backup plugin is the easiest way of migrating your website to another host.
First of all, select the hosting service that’s trustworthy and provide you enough resources for your WordPress to keep function even during traffic spikes. The best is to get a dedicated server if you’re really serious about your blog. Shared servers are often messed up, and can go down unexpectedly.
I suggest MassiveGRID. Why? Because that’s what I use to host LinuxAndUbuntu and it’s been going great. There has never been any downtime from my hosting company.
To start the migration process, first, create a new WordPress blog on your new server. Follow this step-by-step guide to create a new WordPress blog.
After you’ve created a new WordPress blog on your new server, install WPvivid plugin. Go to Plugins > Add new, search WPvivid and click install.
After the installation is completed, activate the plugin.
Now select the ‘Key’ tab. Here you will be able to create a unique key that will be used to move your WordPress site to this website.
You can select ‘8 hours’ of expiration time for the key. After 8 hours, this key will not be usable and you’ll need to create another key.
So the half setup is done. Now login to your main WordPress site and install WPvivid plugin on the main website also. Open WPvivid backup plugin’s dashboard. Click Auto Migration. Now copy the key we created above, paste it here and hit save.
It will now say that the connection with new server is okay and the plugin is ready to send backup to the new website. It will also show the new domain name that you want to transfer your website to.
Now everything is ready. Select the first option ‘Database + Files’ and hit ‘Clone then Transfer’. It’ll start the process by creating a backup archive and then it’ll transfer the backup to your new website. We will then restore that backup on our new website.
Using this method, we will need to change the value of two columns in the database.
After the plugin has successfully transferred the site, open your new website and go to WPvivd dashboard > Backup & Restore.
Down in the bottom, you’ll see the backup that the main website has just sent.
From here, you can start the restore process. Click ‘Restore’. The process may take a few minutes so sit back & relax. Meanwhile, if you want, you can also download this backup.
Login to WordPress blog
After the restore process has completed, it’ll redirect you to WP login panel. Now enter the credentials and you’re ready to go.
Remember, its username and password are the same as you had on the main website.
As you can see the new website is accessible through the server IP address and the domain name still points to the old server. First of all, we need to edit settings of new website and make itself accessible when someone visits the URL and then we need to point the domain to the new website.
To change the website address, go to Settings > General. Enter the domain name in ‘WordPress Address (URL)‘ and Site Address (URL) fields. The domain name has to be accurate. If you want this website to be served over https then enter https protocol.
To serve website over https, you should configure ssl certificate. Otherwise, web browsers will not open your website and throw security warnings.
Now you can point your domain to new website by modifying ‘A’ records. For more information on how to do that, contact your domain name provider.
Once you’ve changed your website address and pointed your domain name to the new website IP, your new website will be accessible through the domain name.
Method 2 – Backup & Restore Manually
The above method will work in most cases but sometimes, in cases where the server is not even able to send backup to the new server, in that case, you’ll need to create a backup and manually upload it to the new website.
You can either use WPvivid plugin to create a backup and download it to manually transfer it to your new host or use the plugin I am using here.
UpdraftPlus is a pretty popular WordPress backup plugin and I have used it so many times for transferring websites from low resources servers.
To install this plugin, go to Plugins > Add new. Search ‘updraft‘ and you’ll get ‘UpdraftPlus WordPress Backup Plugin’. Install and activate this plugin on your site.
Now access Updraft dashboard, go to Settings > UpdraftPlus Backups. The dashboard of UpdraftPlus is very similar to WPvivid. It has divided all its functionalities into different tabs.
Before we start the process, I assume you have already created a new WordPress blog on your new server and have also installed UpdraftPlus plugin on your new website.
By default, any backup you create is stored locally. If you want to send backup to remote storage such as Dropbox, Google Drive, Amazon S3, and other online storage services, you can link your online storage in the ‘Settings’ tab.
In this article, I am going to create a backup locally and then download it to my computer.
To start the backup process, hit ‘Backup Now’ button. On dialogue box, keep the backup settings unchanged and hit ‘Backup Now’.
After the backup has completed the backup, the latest backup will be available under Existing backups. Unlike WPvivid plugin, updraft separates all your WordPress site data so that you can download each one of them individually. This also helps to bypass the issue of server timeout when uploading backup to the new website.
Click Database and click ‘Download to your computer’. Now download all files one-by-one.
Now login to your new WordPress dashboard and go to Settings > UpdraftPlus Backups.
Click ‘Upload backup files’ and select all backup files. It will start to upload all the files. After you’ve uploaded the backup files, UpdraftPlus will put these files together and ready to be restored.
Before you hit the ‘Restore’ button, make sure that you’ve uploaded all the backup files. Click ‘Restore’ to start the process.
The restore process will take some time so take a cup of tea or coffee and watch Cosmos on Youtube.
After the restore process has completed, it’ll redirect you to the old website with the message that the backup was successfully restored. The reason why it has brought you back to the main website is that we’ve moved our old website to the new server and the rest of the settings are not changed. So the website URL in the WordPress database is still the old one and we and we do not need to change that because we are not moving it to the new domain but to the new server.
In this case, simply modify the domain name ‘A’ record and point the domain to the new server. Wait for a couple of minutes and your domain name will point to the new website.
So that is how you can migrate your website safely to another server. Both the plugins I mentioned above just work. Sometimes there are issues with low memory servers but changing settings according to your server can fix the issue.
I know there are other backup plugins that deserve to be mentioned here and I will surely do. I will keep this article up to date.
If you have any problem with any of the above steps, please let me know in the comment section below.