The easiest way to migrate Joomla is Akeeba Backup: creates a .jpa archive + kickstart.php for one-click restoration on the new host.
rsync -avz /var/www/example.com/ root@new-server:/var/www/example.com/
mysqldump -u joomlauser -p joomladb > joomla-backup.sql
# Update configuration.php with new DB credentials
After migration, clear Joomla cache (System → Clear Cache) and verify file permissions: directories 755, files 644, configuration.php 640.