What is the best workflow to migrate a site using domain access?
Can you be a little more specific, are you just wanting to migrate the whole database to a new installation or are you migrating content into an existing installation

In the first case it should be fairly simple,


Put your site in maintenance mode and then flush all the caches.
Take a backup of your sites directory.
Copy the database to the new server.
Upload the drupal installation and then the sites directory to your new server
Modify the settings.php to connect to the database on the new server.
Using a DB admin tool such as phpmyadmin modify the "domain" table in the database on the new server, there is a field in this table called "subdomain" this relates to the url of your domains so just modify this to suit your needs.