Yesterday, I stumbled on a guide on Softaculous website which explains how to restore a backup on a new server.
I tried the trick and it worked for me in moving a WordPress blog of a client from a webhosting provider to my reseller hosting account (different webhost). I didn't use any WordPress backup & restore plugin, no Filezilla and I didn't change any database settings. In fact, I didn't use phpMyAdmin at all.
This was possible because the cPanel username for the blog is the same on both servers.
While creating the account for the site on my reseller hosting account, I ensured I used the same cPanel username on the old server for the site, to avoid issues since I'm aware that the database name will have the cPanel username as the prefix and the path to the domain will also depend on the cPanel username.
This is the same reason why Softaculous states clearly in the guide that the backup will work fine only if the domain name and the path to the domain is the same as installation on old server.
Below are the steps taken:
==> Change the nameservers of the domain name to the nameservers of the new server
==> Back up my installation (directory and database) on the old server using softaculous
==> Download the backup to my PC
==> Create "softaculous_backups" folder on the new server (in the home directory)
==> Upload the backup to the "Softaculous backup" folder created on the new server
==> Restore the back up
After changing the nameservers, I intentionally waited for 24hours before restoring the backup so as to monitor the propagation of the new nameservers. So, once I discovered that the site is offline due to change in nameservers, I restored the backup with Softaculous and the site was back online instantly!
So, follow the steps in the guide if you can ensure that the cPanel username on the new and old servers will be the same.
If you don't understand the "Step 5" in the guide, you can read "how to create softaculous backups folder in cPanel"
NB : If you use this method to move a WordPress from one host to another but to a new domain, the new domain will auto redirect to the old domain after you complete the migration. To resolve this, check the tutorial here.