There are no utilities built into DotNetNuke to perform this function, however, it is a relatively straightforward procedure. There are only 3 aspects to consider.
1) The web root. If you have a backup of your webroot, you can simply move it to the correct location on your new server.
2) The database. The specific technique varies a bit depending upon how your host provides backups, but you'll simply need to restore your backup on your new host (whether via attachment, import, DTS, etc) and ensure that your new connection string information is valid (which is all the website needs to know).
3) Configuration. If your implementation is standard, there are few (if any) things to consider here other than the basic configuration items necessary for ANY DotNetNuke installation (ie. ASP.Net Worker Process permissions to the file system, etc.). Your host should be able to help you with that. However, there are a few cases of modules that utilize items of configuration like specific drive location. For example, the Repository module actually stores the physical drive letter of its configured storage location in the DB... (select * from modulesettings
where settingvalue like '%:\%' will show you).
So in most cases... this is really very simple. In our testing environments we do this multiple times daily.
Cheers