Need to transfer your website to a different server? Don’t worry, we’re here to help!
There are two main steps you’ll take to accomplish this goal: backup your website on your current server, and reinstall on the new server.
Quick side note before you start: don’t cancel your current hosting plan yet! Make sure the transition to the new server is successful first. That way if anything goes wrong, you have a stable copy to restart from, and you can avoid downtime for your site.
Also: you can follow the instructions in this article to set up a copy of your website on a localhost server.
Backing up your site
Exporting your database and downloading your files
You’ll start by logging in to your current server’s cpanel or FTP and creating a backup of your data. Later, you’ll upload those backups to the new server. To save time, use the cpanel for the backup and download your site’s data in a compressed form.
Note: if your site is running while you’re transferring databases, you will only transfer the data up to when the backup was created. Information that was changed after the backup creation will be lost. To avoid this, put your site in “maintenance mode” before you transfer databases.
To create a backup of your data, follow the steps below:
Select all of the files, then right click and select Compress:
After you have your compressed folder, right click on it and select Download:
Next you will export the database. Go into the “phpmyadmin” tool in the cpanel of your current host and select the database that you want to export:
Click on the “Export” link toward the top. Select SQL for the format and click “Go”:
Now your database file has been exported and stored in the .sql format, and you’re ready to import your data to your new server.
Moving to the new server
You should have received an email with your new server provider’s FTP and cpanel information. Log in to the cpanel of your new host to make sure it’s working.
Upload your files backup
Put the compressed zip file you made earlier, in the root folder of your new server. Then, on the new server, right click and extract the files. You might also need to set 777 Recursive permissions.
Do I need to set 777 Recursive permissions?
For Unix servers (or Unix variants, like Linux, OS X, FreeBSD, etc.), 777 Recursive permissions must be applied to the following directories:
To do this log in over FTP, find the directory and click on the “Recursive into subdirectories” option:
Import your database backup
Log in to the cpanel of your new host and go to the Mysql database:
Create a new database and user. Then add the user to the new database and grant “All Privileges”. Be sure to write down the database name, username, and password so you don’t forget it:
Now, go to the phpmyadmin tool on your new server and choose the database you will be importing data into:
Click on the “Import” link toward the top under “File to import”, browse for the .sql file you exported from your old server, and click on “Go.”
You’re all set! The new server has the information it needs to run your site properly.
Point your domain to your new server
Finally, you need to adjust your DNS settings with your domain host so that your domain points to the IP address of your new server. Every host has different steps to set this, so it is best to contact your domain name registrar or hosting company for more details on how to adjust your DNS settings.