Do not forget that you can use different instance of SQL SERVER 2005 into the same server. So if your databases uses the same version of SQL, and that you do not want the database to be on the same server (software side), you can use different install which is more optimized than using VMs.
With MS SQL SERVER 2005, you can install up to 50 instances on the same server.
Correct me if I'm wrong.
Regards
Or Tho