I use MySQL in a Windows Server 2008 R2 box and it runs very well, I never have any issues with it and currently there are about 18 databases on there.
However, it now has a fair bit of data on there and had slowed very slightly so I did some investigating into possible ways to speed it up.
I came across a very simple article here about enabling the query cache size. By default this was set to 0, so effectively disabled.
More details on the query cache can be found here, but basically when the machine is accessing data from memory, it is going to be a whole lot quicker than accessing it from the disk.

To set the memory cache is simple:
mysql> set GLOBAL query_cache_size = 8388608
It’s worth noting that this change will revert back after a reboot, so you will also want to change the MySQL my.ini file value to make it permanent. Just search for the line containing:
query_cache_size = 268435456
and change it o
query_cache_size = 0
There was a noticeable difference in the speed of all the sites using MySQL databases after making this change, give it a go!