Can I run SQL Server SE/EE/DE on VM with 1 CPU?

Hi Experts,
My shop has SQL Server 2016, 2017, 2019 SE, EE and DE.
We support a lot of 3rd party solutions.

This week, our CIO told us to cut the SQL Server VM (Virtual Machine) CPU to 1 because he wants to save the licensing cost and wants to move to Azure with reduced licenses.

I don't find anything on MicroSoft website on what is the minimum CPU required to run 1 SQL Default Instance per VM.

Can you help to shed some lights? I am so worried that trimming CPU to 1 will cause application/SQL performance issues but CIO wants us to do it regardless.

Please kindly help!

many thanks,
Joy

I think the minimum SQL Server license is 2 (SQL is sold in 2-cpu packs, I believe).

I'd be nervous about running SQL with only 2 CPUs, but the only way to know for sure is to try it first.

Hi Scott,
Thank you for your feedback.
Our CIO wants to cut each SQL Server VM CPU to 1 so that he can come up with a reduced SQL Server Per Core License.

I need help on what is the MIN CPU for each SQL Server VM (with 1 SQL Instance Only -- default instance). I am afraid there will be performance issues when SQL VM goes down to only have 1 CPU.

Need some guidance!
Thank you so much!
Joy

The best advice I can give is to contact Microsoft and ask to speak to a licensing rep. The licensing for Enterprise Edition on virtual machines is very economical if you do it correctly. Also, you cannot assume that you can just reduce the number of core licenses, typically all physical cores must be licensed even if you don't intend to use them. Scott already mentioned 2 core packs as the minimum. The only way to know the actual cost is to talk to MS.

One thing that is safe to assume: Azure will absolutely be more expensive than SQL Server on-prem in a virtualized environment, for the same level of performance (probably only half the performance). You'll pay less for more RAM than you'll be charged monthly in Azure for the same capacity (I checked Newegg vs. the Azure pricing calculator), which will do more for your performance than CPU cores.

If your CIO is so concerned about costs that they only want to license 1 CPU, then use Express Edition. It's free, it's limited to 1 core per instance, and has about the same limitations as the cheapest Azure database option. There are also many other costs associated with Azure than just the SQL licensing, like network egress.

Sounds like you've got an EE installation. I'd just jack up the RAM big time and move everything to that, getting rid of all the other license costs. You can use multiple named instances on one box, and CPU licenses will cover all the instances. You'd probably need at least 4 CPUs, but maybe not more than that. Use 1TB of RAM if you need it.

Depending on your application, if you are really concerned about cloud costs this might be worth looking at:

Gentlemen,
First of all, thank you so much for your advice and help!

We run 1 SQL instance per SQL VM due to the various vendor solutions we support for multiple departments, and based on their specific requirement and security concerns.

Where we are here is, our CIO won't want to look at the licensing in a big picture now. All he wants to do is to have us to cut the SQL VM CPU to 1 for all Developer, Standard and Enterprise Editions.

So I can only start with:
How detrimental is it to run a SQL Instance with 1 vCPU (most of them support multiple databases and even multiple applications)?

Is 2 vCPU a minimum run a SQL Instance on VM?

Thank you again!
Joy

CIO wants to: for each SQL VM, cut vCPU to 1.

The first thing to look at is the current system - and how many CPUs are allocated to that environment. The next thing - and probably the most important is to review the minimum requirements from each vendor.

Reducing the number of CPUs for a particular vendor may invalidate the contract with that vendor. It most likely will cost a lot more when that vendor refuses to address issues because you no longer meet the vendors minimum requirements.

I would not run an Enterprise Edition with less than 4 CPUs. In fact - I couldn't see running EE on a system that could run with only 4 (or less) - that would just be wasting money for features that are almost certainly not utilized.

1 Like