Here is a Step by step procedure to move a WordPress site from one server to another server or from localhost to server. You can also move the complete website setup from one domain name to another.
If you have hosted your website on a dedicated server or cloud server and don’t have a cPanel and PHPMyAdmin access, then click here to read How to move WordPress site to a new server or a new domain using SSH?
Assumptions
Server 1: Current server where WordPress is set up. This can be your local host also.
Server 2: The server where you want to move the website.
Follow the below steps.
1. Server 1: Export database
We can use a simple plugin to export the WordPress database. Login to the WordPress control panel of server1 and install the plugin “WP Migrate DB“
WP Migrate DB helps to export the WordPress database, does a find and replace on URLs and file paths, and then allows you to save it to your computer for free of cost.
Once the installation is completed, open Tools -> WP Migrate -> MIGRATE -> Export database.
Here we have to update the domain name and website file path.
To move the website from one domain name to another or from localhost to the actual domain name, you need to fill Current address and new address. If there is no change in the domain name, then just leave it blank.
File-path is the complete file path of your server. You can get this file path on the cPanel. If you don’t know the full path, you can ignore this.
Click Export Database to export the database. Download and keep it.
2. Server 1: Download the website files
Download complete website files from server1 using FTP or file manager. As there are multiple files, it is better to zip the files and download them as a single file. Login to cPanel and click on File Manager.
Go to the public_html folder. Select all the files inside and click on the compress option on the right-click menu. Give a name and save it in the public_html folder. Now download the zip file.
Alternatively, you can download the files using any FTP application.
Now we have taken the complete back of WordPress files and database.
3. Server 2: Import Database
- Login to Server 2 cPanel
- Create a new database
- Open MySQL Databases
- Create a new MySQL database and note down the created database name
- Create a new MySQL user
- Add User To Database: Select the created user and database and click add. Provide all the permissions.
- Import the database
- Open phpMyAdmin
- Select the database on the left-hand side
- Click on Import
- Chose file: Select the exported database dump downloaded from server 1
- Click on the ‘Go’ button.
- Once the import is done, there will be a success message.
4. Server 2: Upload the website files
Upload the downloaded WordPress files zip file to the public_html folder of Server 2. You can upload using the FTP application or using File manager.
Login to server 2 cPanel and go to File Manager. Select the public_html folder. Upload the WordPress files zip file. Once the upload is done, unzip the files into the public_html folder.
Edit the wp-config.php file and update the database and user details which you have created and noted down.
/** The name of the database for WordPress */
define( 'DB_NAME', 'database_name_here' );
/** Database username */
define( 'DB_USER', 'username_here' );
/** Database password */
define( 'DB_PASSWORD', 'password_here' );
/** Database hostname */
define( 'DB_HOST', 'localhost' );
5. Update the DNS records
Now you have moved the database and all the website files from one server to another. Now is the time to point the domain to the new server.
Login to the domain control panel and go to DNS or name server settings. Point the DNS of your domain name to the new hosting server. Usually, it will take 12-24 hours to update the records.
6. Browse the website and enjoy!
You are done with all the tasks. Open the URL on the browser and check if the website opens properly. Still, your domain may point to the old server and open the website properly. To check whether the website loaded from the old server or the new server, you use the ping command on the command prompt and check the IP. You can also rename the index.php file of the old server and check if the website loads properly.
Just drop a comment if you get any problems while moving the website. I will be happy to assist you.
Thanks for given this solution and i have done my wordpress website transfer
I was surprised!Very helpful information.
Thanks for making your blog.