Optimizing SQL Server for Virtualized Environments

Here are some tips from a magazine article about optimizing SQL Server in a virtual environment:

  1. Check CPU Usage Regularly
  2. Disable Memory Balloon Drivers
  3. Don’t Assume All Database Server Memory Can Be Shared
  4. Get Back to the Storage Configuration Basics
  5. Deduplicate Data
  6. Disable the Lock Pages in Memory Option
  7. Monitor the VMs and the Physical Host

If you are using your server for self-service reporting, we recommend the following instead of doing all that work:

  1. Stay physical. Don’t virtualize the database. While it works great for web servers, the added overhead and complexity isn’t worth it.
  2. Go 64-bit.  Absolutetly no reason not to and there are huge benefits for databases larger then 4 GB.
  3. Stick with one instance.  You can actually query across different tables in different databases if you keep them in the same instance.
  4. Buy lots of memory.  It’s orders or magnitude cheaper than hiring a DBA to optimize your database or having a developer learn how to do it.
  5. Go with SSDs if your database will fit on one.  Can be much much faster for some queries.