There can always arise a situation when your web hosting company may not be providing you the best service. For instance it had promised 99% up time but most of the time you find that your website is down and that is because your web hosting Server Company’s server is down. Or the web hosting company has now made some changes on the server for which you need to make changes to your web pages such that SMTP Authentication is done, so that you can receive the email from the forms that are present on your website. There are also instances when there are invisible links that are placed on the web pages of your website and you are unaware of it, and one fine day you see that your Google Page Rank has gone down.
So in all such situations it is always advisable to replace your web hosting service provider with a new one. The first thing that you need to do is to take a backup of all the data that is hosted on your current web hosting server. You can do this by using a tool called Filezilla, wherein you need to enter the FTP details and then you can download all the files to a folder on your hard disk.
The next step is to signup with the new web hosting service provider without terminating the services with your current web hosting service provider. The new web hosting service provider will provide you with all the details to upload the files to their new server. You can again use FileZilla here to upload the files from the folder on your hard disk to the new web hosting server.
Once this is done, you must check if the website and its webpages are opening properly. You can check this with the IP address provided by the new web hosting company. Simultaneously you can setup your email accounts as well. Once again if all is fine, then you can make changes to the DNS information which is held by the registrar from where you purchased your domain. The process for the DNS to change can take anywhere between 48 to 72 hours.
In case you need to setup your email accounts on the web hosting server then you might need to configure your email software so that it can contact those accounts. Do not delete your old email account, as it would take some time for the new email accounts to get propagated.