Joomla installation consists two parts: Files/folders and a database.
The files and folders contain the core code of your Joomla and the extensions. The database contains all records for Joomla installation i.e. posts, categories, articles, extensions records etc.
Let us assume that you have Linux hosting with your current provider and you would like to migrate your Joomla to another hosting provider (Linux hosting). The migration will be done in two phases as follow:
 Migration of your Joomla files/folders:
First you need to migrate all your Joomla files and folders to the new hosting provider’s server. For example, if you have installed Joomla in the main root folder (i.e. public_html, htdocs), first download all contents in your local system and then upload all the contents on the new server.
 Migrate database to new server:
First, you will have to take full backup (SQL dump) for your existing Joomla database. You should be able to take full database backup using the tool provided by your existing hosting provider. If you face any trouble, you can update them to generate full backup for you. If you are using cPanel control panel, you can take the backup from phpMyAdmin.
Once you take full backup, create a blank MySQL database from the new hosting provider’s control panel. If you are using cPanel, you can refer this article that will assist you creating MySQL database. Now, use the tool provided by your new hosting provider (i.e. phpMyAdmin etc.) to restore MySQL backup. If you do not see any tool or face any problem, you can contact your hosting provider to restore your database.
Once the database is restored, you will need to create MySQL user and assign full privileges to your newly created Joomla database.
Now it’s time to modify Joomla configuration file. You will need to open configuration.php file and you will need to update database hostname, database name, database username and password in this file. If you are unsure about this details, you can obtain them from your new hosting provider.
Following are the list of companies which offer Joomla hosting:
Hope this guideline will help you for seamless migration of your Joomla web site.