The following article documents how to transfer an Addon Domain to its own cPanel account.
This guide will help you with steps needed to transfer an addon domain from its current location within another accounts cPanel over to its own cPanel account
1) Determine the location and backup the addon domain’s files.
Log into the source cPanel account and click the Addon Domains icon.
Scroll down to the bottom of the page to where the addon domains are listed. The Document Root is what you are looking for. This is the directory in which all the files for the addon domain are stored.
Using your favorite FTP client, download a copy of this directory to your local computer and set it aside.
2) Backup your databases.
Via cPanel’s backup section.
Go back to the cPanel Home screen and click on the Backups icon within the Files section.
Scroll down to Partial Backups and click on the databases which your site uses. This should then start downloading a backup of your database to your local computer.
Via phpMyAdmin
Go to the cPanel Home screen and click on the phpMyAdmin icon within the Databases section.
Click on the database name off to the left hand side.
Click on the Export tab now located at the top of the main section. The default options should be fine. Click Go. This will download a .sql file to your local computer.
3) Backup email accounts and forwarders
Download a copy of the /home/USER/mail/DOMAIN directory, where USER is the source cPanel account’s username and DOMAIN the domain name of the addon domain in question.
Download a copy of the /home/USER/etc/DOMAIN directory, where USER is the source cPanel account’s username and DOMAIN the domain name of the addon domain in question.
Go back to the cPanel Home page, click on Backups, scroll down to Partial Backups and click on the domain name under the “Download Email Forwarders” section. This will download a copy to your local computer.
4) Remove the addon domain entry.
Go back to the cPanel Home screen and click on Addon Domains.
Click on Remove next to the addon domain in question. This will remove all entries of the addon domain and cause the site to go down.
5) Recreate the addon domain as a standalone cPanel account.
Log into your WHM and create a new cPanel account for the domain.
This can be skipped if you purchased a new account on a new server for the domain in question.
6) Upload the content of the backed up directory (done within step 1) directly to the new account’s public_html directory.
7) Re-upload any databases
Via cPanel’s backup section.
Go back to the cPanel account’s Home screen and click Backups.
Scroll down to the Partial Backups section, click Choose File under “Restore a MySQL Database,” select the backup from Step 2.b and click Upload.
You can see the new database name via the MySQL Databases icon within the Databases section.
Via phpMyAdmin
Click on the MySQL Databases icon within the Databases section and create a new database.
Go back to the cPanel Home screen and click on phpMyAdmin.
Click on the database name off to the left hand side.
Click on the Import tab now located at the top of the main section. Click the Choose File button, find the .sql file generated in Step 2.b and click Go.
8) Recreate any database users and assign proper privileges via the MySQL Databases icon within the Databases section in cPanel.
9) Re-upload email accounts and forwarders.
Upload the full directory backup created in Step 3.1 to /home/USER/mail/ on the new cPanel account.
Upload the full directory backup created in Step 3.2 to /home/USER/etc/ on the new cPanel account.
Go back to the cPanel Home page, click on Backups, scroll down to Partial Backups and click on the Choose File button under the “Restore Email Forwarders” section. Select the file downloaded in Step 3.3 and click Upload.
After this has all been completed, you will then need to search for any configuration files to let the site know the database name and user has changed. These files are generally located within the root directory of the script or in an included folder. Their titles can range from config.php, database.php, etc. Once located, open the file with a text editor and search for the database entries and replace what is currently present with the new database name, user and password you previously created. After saving this file, you should then be able to see the site resolve like it did on the old server.