Licensing Logic: Licensing SQL Server, Everything You Need to Know!


Part of the Microsoft Licensing Logic series from the Microsoft Licensing team.

Just when you think Microsoft licensing is straightforward and you’ve got a pretty good grasp on it, along comes SQL Server which has historically been the exception to the licensing rules. However with SQL Server 2012 we did a great deal of simplification so it’s easy to understand the basics. You’re going to approach licensing differently depending on whether you’re deploying SQL Server in a physical or virtual environment.

SQL Server Licensing in a physical environment.

SQL Server is available is three main editions; Standard, Business Intelligence and Enterprise. The Enterprise edition is licensed per core (no CALs required), Business Intelligence is licensed per server and client access licence (CALs) and the Standard edition can be licensed using either method. This is summarised below and hasn’t changed with the April 1st release of SQL Server 2014.

clip_image002

If you’re interested in the Business Intelligence aspects of SQL Server (and let’s face it, who isn’t), we’re holding an event in Reading on 1st May where you can hear about the latest innovations on Microsoft's high performance platform for real-time insights and apps covering SQL Server 2014, SQL Server Parallel Data Warehouse, Excel 2013, Power BI for Office 365 and Azure. You can register here – hope to see you there.

Before I present a little flowchart which might make your decision easier, let me clarify a few things about per-core licensing. We are talking per-core here and not per-physical processor, unlike Windows Server 2012. Currently SQL Server 2012, SQL Server 2014 and BizTalk Server 2013 are the only products licensed per-core.

To find out the appropriate number of cores you need to licence, simply count the number of cores in each physical processor in the physical server. Software partitioning doesn’t reduce the number of cores you need to licence. Once you have that you need to remember three things:

  1. You need a minimum of four core licences per processor. So if you have a dual-core, dual-processor machine you would need to count that server as a dual, four-core processor and purchase licences for eight cores, despite only having four cores in total.
  2. SQL Serve core licences are sold in packs of two: each SKU covers two processors. So in our example above we would purchase four SQL Core licence SKUs to cover eight cores.
  3. Certain AMD processors need to have a multiplication factor of 0.75 applied to the core count. See this link for the processors in question and what to do.

For server and CAL, SQL Server works in the same way as any other Microsoft server + CAL product. Licence the server(s), determine the number of unique users and/or devices accessing the SQL Server and purchase the appropriate number and type of CALs. SQL 2014 CALs will allow access to all previous versions of SQL Server. Also you don’t require a separate CAL for every SQL Server; a SQL Server 2014 CAL allows access to all the SQL Servers within the organisation.

A simple way of determining the edition and licensing of SQL Server 2012 and SQL Server 2014 is below.

clip_image004

SQL Server Licensing in a virtual environment.

Regular readers of the licensing blog will be saying “I bet this has something to do with Software Assurance (SA)”. Well, you’re partly correct. I’m going to assume you're running Windows Server 2012 Datacenter edition on these boxes just for simplicity and I haven’t included details of the OS running in the Virtual Operating System Environment (VOSE). Licensing Windows Server has been covered in a previous blog.

For SQL Server Standard and Business Intelligence editions you can licence individual virtual machines (VMs) using the server + CAL model. Simply purchase one server license for each VM running SQL Server software, regardless of the number of virtual processors allocated to the VM. Then purchase the appropriate number of CALs.

For example, a customer who wants to deploy the Business Intelligence edition running in six VOSEs, each allocated with four virtual cores, would need to assign six SQL Server 2014 Business Intelligence server licences to that server, plus the CALs to allow access.

For SQL Server Standard and Enterprise editions you can licence individual VMs using the per-core model. Similar to physical OSEs, all virtual cores supporting virtual OSEs that are running instances of SQL Server 2014 must be licensed. Customers must purchase a core license for each virtual core (aka virtual processor, virtual CPU, virtual thread) allocated to the VOSE. Again, you are subject to the four core minimum, this time per VOSE. For licencing purposes, a virtual core maps to a hardware thread. When licensing individual VMs, core factors (i.e. the AMD processor 0.75 factor) do not apply.

Two examples are shown below (figure 1 and figure 2) for clarification.

clip_image007Figure 1: (above) SQL Server core licences required for a single VOSE on a dual, four-core processor server.

clip_image010Figure 2: (above) SQL Server core licences required for two VOSEs on a dual, four-core processor server.

With the SQL Server 2014 Enterprise edition (note: not Standard edition), if you licence all the physical cores on the server, you can run an unlimited number of instances of SQL Server, physically or virtually as long as the number of OSEs with SQL doesn’t exceed the number of licensed cores. For example, a four processor server with four cores per processor provides sixteen physical cores. If you licence all sixteen cores, you can run SQL Server in up to sixteen VOSEs (or the physical OS and 15 VOSEs), regardless of the number of virtual cores allocated to each VM. What if you want to run more than 16 VOSEs in this case? Well, you are permitted to assign additional core licenses to the server; this is known as licence stacking.

Here’s where Software Assurance comes into play. Licence all the physical cores with SQL Server 2014 Enterprise Edition and software assurance and your licence rights are expanded to allow any number of instances of the software to run in any number of OSEs (physical or virtual). This SA benefit enables customers to deploy an unlimited number of VMs to handle dynamic workloads and fully utilize hardware computing capacity. As with most SA benefits, this licence right ends if SA coverage on the SQL core licences expires.

Licensing for maximum virtualization can be an ideal solution if you’re looking to deploy SQL Server private-cloud scenarios with high VM density, Hyper-threading is being used so you’re looking at a lot of virtual cores to licence, or you’re using dynamic provisioning and de-provisioning of VM resources and you don’t want the headache of worrying about adjusting the licence count. As you can see in figure 3 (below) this can be very cost-effective.

clip_image013Figure 3: (above) Options to licence SQL Server Enterprise in a virtual environment. In the top example you would need 8 core licences + SA for unlimited virtualisation whereas in the bottom example you would need 10 core licences and still be limited in the number of SQL VMs you could run.

What’s new in Licensing for SQL Server 2014?

Just two subtle changes: one for high availability scenarios and the other for multiplexing with SQL Server Business Intelligence edition.

The rights to install and run a passive fail-over SQL Server have now moved to be a Software Assurance Benefit. This is a licence right for SQL 2012 and earlier with the license terms listed as an exception under each SQL edition to which it applies. With SQL 2014 the fail-over servers terms will move to the Software Assurance Benefits section and thus only apply to SQL covered with SA.

The second update is for Business Intelligence Edition. We’re relaxing the multiplexing policy so it no longer requires a CAL for users or devices that access the BI server

We say this in every blog but as you can imagine, there’s a lot more detail to SQL licensing so please listen into our monthly licensing spotlight calls where we cover this and other topics (you can view archived calls here).

Other Licensing Logic Articles:


Did you find this article helpful? Let us know in the comments bar below, or reach out via twitter @TechNetUK.

Comments (11)

  1. MN says:

    Excellent summary – thanks

  2. MN says:

    Posts like this are actually more useful to explain licensing rules than the spotlight calls!

  3. james says:

    Are there conditions to applying Server & CAL with Standard Edition? I ask as I was under the impression that on;y Core licensing was supported.

  4. MercyKing says:

    Hello Steven,

    I am little confused about the licensing of SQLSvr Enterprise as I have read something a little different from what you have explained here. Is there a way I can send you a mail? The licensing rules for SQLSvrEnt edition is so confusing.

  5. Ahmed Alalam says:

    This is very useful , I for more clear detail about licensing ..thanks

  6. Lieve Geelen says:

    What about when you have just a few SQL Standards with four virtual cores running in a cluster with 8 ESX hosts and every host has 16 cores (2 CPU´s with 8 cores) and hyper-threading on, HA on. In this case, we have to calculate what is the cheapes option,
    buy 16 Cores Enterprise for each ESX host in the cluster, that does not seem an interesting option to me. But if you want to license based on the VM, and every virtual core has to be supported by not more then one hardware thread, do you then require 32 core
    licenses for each VM or do I need 8 Standard Core licenses as every virtual core (4 per VM) is supported by two hardware threads. How does this work exactly?

  7. Anonymous says:

    The TechNet UK Blog is 5 years old today and boy it’s been a good 5 years getting to know you all

  8. Ankit Garg says:

    I have one confusion for SQL Standard License. If a have a 24 core server and SQL Standard support maximum of 16 core license. so can I have two instances of SQL with single 12 core Standard license.

  9. Sam Yan says:

    If you have a SQL Standard Edition shop and you want all your test, dev and UAT environments to mirror production can you install Standard edition on them instead of developer edition? If so do you need to fully licence each non-prod environment?

  10. Alok Joshi says:

    Hi Steve,
    This article is certainly helpful and clears out most of the SQL Server 2012/2014 Licensing scenarios. But I have two questions around the same. Appreciate if you can reply.

    Both the queries are around SQL Server Component (SSRS) installation & Licensing impact in Production environment. We have 16 core SQL Server 2014 – Standard Edition license that we use on our physical SQL Server box.
    As per the Microsoft’s recommendations, we have installed the SSRS service (only) on a separate VM (Virtual Machine). The SSRS reporting DB is on the physical SQL Server only. Currently we have 16 vCores assigned to this SSRS VM.

    Open Questions:
    1) I could not find any specific guidelines on the SSRS installation/licensing to confirm if the SSRS vCores shall follow the SQL Server 2014 core licensing rules. So wanted to check if this logic is correct? In layman’s terms if we have 16 core SQL Server license, then does that means that we can only install SSRS on a max of 16 vCore VM or 16 Core physical box? Since the SQL Server component’s licenses are free* if you have a valid SQL Server license hence is the question.
    2) With the current 16 core Standard SQL Server license, are we allowed to create 2 SSRS VM’s of 8 vCores each or 4 SSRS VM’s of 4 vCores each instead of one with 16 vCores? (without impacting the licensing rules)

    People may have similar question on the SSIS and SSAS.

Skip to main content