There are two options when migrating a cPanel account. If you are migrating the account to a new server where you have root access and access to WHM, you can proceed with option 1 which uses a full cPanel backup. You can also use this option if your new host will restore the full backup for you.
If you don’t have access to WHM, then you proceed with option 2, which is a manual restoration of the files.
Click the Backups button to create a full account backup:
Click the blue button to download an account backup:
Once the backup is complete, you can download it to your PC.
Open WHM and under Backups, restore the full backup file:
Follow these steps in order to manually restore a backup in cPanel.
Log into your current cPanel dashboard and go to the Backup Wizard. This will take you to a page that gives you the option of a Full or Partial Backup. Under Partial Backup, select MySQL Databases and click on the database name to download a backup. Save to your desired location.
Go back to the cPanel home, and back to the Backup Wizard page. Click the Full Backup Option. You have several options under Backup Destination. For migrating from one cPanel hosted site to another cPanel hosted site your easiest option is Remote FTP Server. You will need to provide information for a Remote FTP server including address, user, password, port and remote directory.
You are going to use the IP address of your new cPanel hosting account. If you do not know this, your hosting provider should be able to provide it for you. You will use the username and password of your new cPanel account. The port should be set to 21 and you can use any location within your new cPanel website. A base cPanel site should include a /public_html that you can use. You have the option to provide an email address used for notification when the Backup is complete.
You should then see a message that the Full Backup is in progress. This indicates that cPanel found your new IP address and that the login was successful. This process may take anywhere from a few minutes to a few hours based on how large your website files are.
Return to the cPanel administration home and select File Manager. On the left-hand side of the screen, you will see a file structure tree. Click on the Home directory. Within Home, click on the Mail folder and open the domain folder of the account you wish to migrate. If you are migrating more than one account, you will need to repeat this step for each email account. Use a Ctrl-Click to select the Cur folder, New folder and maildirsize file. Right-click on your selection and choose Compress. You will be prompted to select the compression type. We will be using Zip Archive for this tutorial. This will create a file called Cur.zip in that folder. Right Click on Cur.zip and download to your PC or other chosen location.
Log into your new cPanel site and go to File Manager. Note that your original host and your new host may have chosen to use different cPanel themes, but you should still be able to find the same icons and options. Use the File Manager to browse to the location you choose to save the Full Backup from your old cPanel site. In the example here, we used /public_html. Do not do anything until the size of your zip file stops increasing, or until you receive an email notification from your old cPanel site that the backup is complete.
Once complete, right-click on the file and extract. The file zip should be named backup with a date and time stamp in the name. The time to extract will vary based on the size of the zip file. Select the entire folder and drag it to your home folder. It is recommended that you move the backup zip file out of the public_html directory and to a different subdirectory. You can now delete the backup zip in the public_html directory.
Go into the backup folder and locate the home_dir folder. Open it and select all files. Drag those files to the home root. This will overwrite the default web page files with your previous website files.
Return to the cPanel administration home and select Backup Wizard. Select Restore Database and browse to the file location where you saved the database backup in Step 1. The Backup Wizard will do the work for you and there is no need to extract or move files in this step.
Restoring your email will involve two steps for every email account that you need to migrate. You will need to create an email account and then restore the files for each email account. Repeat the steps below as necessary.
Create an email Account: You will need to create an email account in your new cPanel site that matches the email account in your old cPanel account. Both need to have the same email address and login information. From the cPanel administration home, select Email Accounts. On the Add Email Account tab, enter the email address, domain and password of your existing email account. Click on Create Account.
Migrate email Files: Return to the cPanel administration home screen and select File Manager. We are going to find the folder you just created by creating a new email account. Use the tree on the left side of the screen to browse starting at Home. Within Home, select Mail and then the domain you specified in the previous step. Click on Upload in the menu and select the Overwrite existing files option and then drag and drop the Cur.zip file created in Step 3 into the Upload interface. Right-click to extract the Cur.zip file.
Remember to point the DNS record to your new server and that this can take up to 24 hours to take effect.
You have now successfully migrated your website! You should be able to verify that by viewing the website on the new host and accessing your email. Keep in mind that if your website uses SSL Certificates, you will need to install those on your new cPanel site as well.