Hi,
It's actually fairly easy to do, although it might appear daunting if your haven't done it before.
1. Back-up the files, maintaining the file/folder structure onto your computer (you do back up regulrly, don't you?). Make sure that mainfile.php has been copied (I've found that the 444 permissions sometimes stop it being downloaded).
2. Back up your database to your computer. Most folks use phpMyAdmin which is supplied as part of the cPanel by most hosts. You will find plenty of online guides on how to do this.
3. If your having change of server-level domain, open your database backup using a text-editor (Notpad on PC, Textedit on an Mac) and do a find/replace, finding your old domain (
http://www.yourolddomain.com) and replacing it with the new one (
http://your newdomain.com). You will probably find hundreds of references changed.
4. Upload your backed-up files/folders to your new server (except mainfile.php).
5. Create a new database and database user on the new server
6. Import your database backup into your newly created database. Check that you have the correct number of tables, etc.
7. Edit mainfile.php for the domain, virtual and physical file-paths, database name, databse user and database password. Remember to leave out the trailing / character at the end of the filepaths.
8. Upload mainfile.php to the new server and CHMOD it to 444.
That's it!
When you're happy it's working, delete the old files and database.
If you're a little uncertain about doing it, you could practice on your local machine by installing XAMPP (for Windows PCs) or MAMP (for MAC) and setting up a working version locally. It's good to do this anyway, in my experience - great for seeing how things work and testing minor changes.
HTH