I think it could work well. Having a server in a vm makes it more portable.
Many of my servers and services are running in vms on two centos 5.4 servers: openfiler, efw firewall, trixbox 2.8, SME Server (in server mode for email and spamassassin), windows 2003 server, windows 2008 server, windows 7, and others that aren't running.
I would suggest:
If there are a lot of temp files or disk access to the OS, install the vm OS on a block device rather than to a file. The storage should be on a local block device as well.
If there's a lot of lan traffic to/from the other vms, install a 3rd ethernet card in the server that is only used for db traffic.
I also use a virtual network that the vms can use to reach each other. This is basically a private internal lan running across the host machine's buses, rather than through your network switch.
I get native performance with my set up...
Thank you. Excellent thoughts all, and just the type of feedback I needed to think about. I would be going out a dedicated NIC on the data traffic, and I would do block devices in LVM for the disk IO, Windows 2008 32bit seems to be very happy with that setup in a mixed Xen environment. Under no circumstances would I run these as file images. There is no comparison to dedicated hardware for this application using file based vms. Has to be block devices.
I think for my purposes putting the database servers in Xen is absolutely worth a shot. If it works, I have a lot of benefits from it. If it doesn't, I lost some hours but gained some knowledge, and maybe a backup server.
A vpn (OpenVPN) server in Xen is part of my plan as well. I'm trying to sketch out all the lines of IO and see what I have to do to keep things snappy.