There comes a time in every WordPress web owner’s life when he/she has to do a website restoration. The reasons may vary. One scenario is when a change has been made on the website that he/she is not happy with. A website restoration, in this case, could revert the website to its pre-change state. Another and more common occurrence is when the website gets hacked and you need to restore a safe backup on to the live site.
Apart from these, site restoration is also handy if you need to move your website from one web host to another. Here, restoration essentially performs migration where a backup is restored on to another host server, instead of its live site.
If you have manually backed up your website, you would need to manually restore your WordPress site as well. In fact, most automatic restoration plugins essentially just enable you or make it easier for you to do a manual restoration.
A word of caution!
Before we proceed with the topic at hand, we would like to issue a fair warning – manually restoring WordPress site is risky. And we don’t mean that lightly. When we say risky, we mean the kind that can break your carefully built site in just one wrong move! Why? Because, manual restoration involves meddling with the fundamental components of WordPress – namely files and databases. These are critical to WordPress sites and any error could lead to the entire site collapsing. If you wish to understand more about the ‘hows and whys’ of it, please refer to our detailed article on WordPress files and database. As we were saying, manual restoration is very challenging, so consider this a fair warning.
What is required for manual restoration?
In this section, we tell you what you need to keep in mind (and keep handy) before you start your manual restoration.
Files and databases should be backed up separately:
For manually restoring your WordPress site, firstly you need a safe and reliable backup of your site since backups and restore go hand in hand. However, since manual restoration requires you to restore the two essential components of WordPress – files and database – separately, you need to back up your files and database separately, as well. If you have already downloaded your files and database, then you are good to go. However, if you haven’t done so, follow our detailed instructions to download files and database separately. Alternatively, you could also use a backup plugin like BlogVault to safely backup your site seamlessly. Check out BlogVault download feature, if you are interested to know more.
Another point to keep in mind before you proceed with manually restoring your site is to ensure there is a fresh WordPress version installed on the site if your site has been hacked. Why? This is to ensure there are no backdoor files or infections left behind. You can avoid this if you have a fresh install of WordPress on your site so that you can work on a clean slate. You could use an FTP client like FileZilla to delete all your existing files. We shall explain how to delete the database in the ‘restore WordPress database from phpMyAdmin’ section. However, before you proceed with deleting all your existing files, remember to do a complete backup of your site using a reliable backup plugin.
Get set to restore –
Now, let us get to the task of restoring your site. This happens in two steps as follows:
- For database: using phpMyAdmin/Cpanel
- For files: using FTP
Let us start with the first method, which is using phpMyAdmin/Cpanel.
1. Restore WordPress database from Backups using phpMyAdmin/Cpanel
First and foremost, install phpMyAdmin on your system. You can either download it yourself or if you are using hosting services, you get it pre-installed in their control panels. Follow the below mentioned steps to restore:
Step 1: Login to your hosting account.
Step 2: Once you log in to your hosting account, you will be able to access your phpMyAdmin account. This is how it looks on Bluehost where our test site is hosted.
Step 3: Click on “Databases”. You will get a drop-down list of all the tables.
If your site has been hacked, it is better to first delete your existing infected database tables before restoring from the backup. However, please make sure that you have reliable multiple backups of your WordPress site before you do this. To delete the database, select the database from the left section. We chose the one marked in red – bhwpsite_67e. Once you click on the specific database, all its tables would be displayed. From the right-hand section, click on the Check all option so that all the tables are selected as shown in the image below. You can see a Drop option close by. Click on that to delete all the selected tables. Please note, this is only in case your site has been hacked and you need to clear your database to ensure no infections remain. The rest can totally skip this step.
Step 4: Select the database in which you want to restore all the data. For the purpose of this article, we chose the bhwpsite_67e database as shown in the image below. On the top of the screen, there will be an ‘Import’ tab, click on that.
Step 5: A new window will open, click on the ‘Browse’ button.
Step 6: Clicking on the Browse file option will open a new window as shown below. From your local files, select the location from where you wish to import the database tables.
Step 7: Once you select the location from where you wish to import the database tables then click on Format drop-down menu to select SQL format. Click on the ‘Go’ button at the bottom of the page.
This is quite a time-consuming process. So while you wait, you could do some light reading. Here’s what we recommend. Beginner’s Guide: How to Manually Backup WordPress Database with phpMyAdmin. By the time you have read the article, we are guessing that your database backup is completely restored!
2. Restore WordPress files from Backups using FTP
So before we get to restoring WordPress files, we are assuming that you would have done the following three things we had recommended.
- Installed a fresh WordPress installation
- Backed up all your files (obviously!)
- Also, keep your FTP credentials handy.
Check out this article that explains how you can find out your FTP credentials, in case you don’t have them. Alternatively, you can contact your hosting provider, who could provide you with those details. Now let us get to restoring your backup archives using FTP. For this, you need to install an FTP client FileZilla. An FTP client such as FileZilla enables users to transfer files between local computer and the server over the internet.
Step 1: Open FileZilla. Enter your FTP credentials and click on Quick Connect to connect to the server. (Ensure that your FileZilla is the latest version.)
Step 2: Once you are connected to the server, then you would see your local files on the left side and the remote site on the right.
First, identify the WordPress files in the remote site. In a fresh WordPress install, the WordPress files would be under the root directory public.html. You can easily identify the WordPress directory by looking for files and folders such as wp-includes, wp-content, wp-admin, wp-config.php file etc.
So now that you have identified the WordPress folder, let us restore the WordPress files.
Before starting the restoration process, make sure your backup files are all in a folder saved on your local system (the left panel).
Now click on the WordPress folder on the right panel, then you would see all the WordPress files and folder on the remote site. Then click on the backup folder on the left panel to see the backed up WordPress files and folders on the local system. The two panels would now look identical. To restore your backup to the live site, drag and drop all the files from your local folder (left panel) on to the WordPress folder (the one with wp-includes, wp-content etc) on the remote site (right panel). If you are an advanced WordPress user and you know exactly what to restore, selectively drag and drop files and folders to the right, which will overwrite every file and folder, therefore restoring them. However, we would strongly advise against this.
The upload is a time consuming one. To give you some idea about how long a process this is, consider this: a 700 MB site will take just a few seconds to restore database, but will take a minimum of one hour to backup restore the files! Not only is this restoration process a time consuming one, but it is also a very risky one as well. While the process seems straightforward enough, it is of utmost importance not to miss any crucial file or folders while uploading. Another point to keep in mind is to keep your internet connection until the upload finishes. Keep your computer connected to a power source throughout so that the battery doesn’t get drained out in between.
Restoring a website is fraught with risks – the kind that can kill your site. So as we mentioned several times in this article, do proceed with extreme caution. We also recommend that before you restore your site from a backup, test it. Why? Because the process of restoration involves making a lot of risky changes to the site. So before restoring your backup directly on to the live site, wouldn’t you think it prudent to test it first? We highly recommend it. This is to avoid further headaches that are typically associated with a site breaking due to restoration. How do you do that?
One of BlogVault’s most popular features is the Test Restore. What is Test Restore? Well, essentially it is a feature that empowers you to test your available backups in a safe testing environment to see if all its components are working well. Once you are assured that the backup is safe to be restored, you can auto-restore it on to your live site. And unlike a lot of other popular WordPress backup and restoration plugins, BlogVault’s auto-restore is truly automatic – with just one-click.