Learn more about SQL Server tools



solving sql server problems for millions of dbas and developers since 2006
join MSSQLTips for free SQL Server tips

































Top SQL Server Tools






















Understanding the SQL Server 2012 Licensing Model

MSSQLTips author Derek Colley By:   |   Read Comments (13)   |   Related Tips: More > Licensing
Problem

You are a database professional considering or implementing a move to SQL Server 2012 from your current database configuration. You've heard horror stories about the SQL Server 2012 licensing model - double the cost, double the complexity. You need to find the best-value to convince your management that the move to SQL Server 2012 will be worth the money. But how do you explain the licensing model to others in a clear, easy-to-understand way? In this tip I intend to explain the SQL Server 2012 licensing consideration by consideration, briefly and without ambiguity (if I actually achieve this aim, please leave comments at the end of this tip).

Solution

With the introduction of SQL Server 2012, Microsoft has overhauled their existing per-processor licensing model to recognize that many customers are now using multi-core servers in both physical and virtual configurations. Unfortunately they haven't been very clear about the licensing differences, with pages upon pages of marketing bumpf aimed at purchasers and not professionals. Awash with buzzwords and over-hyped fad terms (you say 'cloud', I say 'someone else's server') the overall effect is to confuse rather than enlighten. Consider this extract from their main page on SQL Server 2012 licensing [1]:

'SQL Server 2012 is a significant product release, providing Mission Critical Confidence with greater uptime, blazing-fast performance and enhanced security features for mission critical workloads; Breakthrough Insight with managed self-service data exploration and stunning interactive data visualization capabilities; and Cloud On Your Terms by enabling the creation and extension of solutions across on-premises and public cloud. SQL Server 2012 is a Cloud Ready Information Platform.'

In the sections below, I will start with models of delivering licenses and move through the various considerations, such as support model, license type, virtualization, high-availability solutions, licensing for previous versions, and mention some of the rules that apply in different circumstances. Links are provided at the end of the tip for further reading.

SQL Server Licensing Delivery Models

This section will deal with how licensing is delivered. This can be broadly broken down into three sections - Volume Licensing, Retail Licensing, and SPLA (Service Provider License Agreement) or ISVR (Independent Software Vendor Royalty) licensing.

Volume Licensing is aimed at business, from small companies to large enterprises. With volume licensing, the company pays only for the software license, rather than the retail box set with CDs/downloads, manuals, packaging and the like. Volume licensing also goes hand-in-hand with Software Assurance (SA), an additional Microsoft product that applies to volume licenses for many different products and that allows different levels of support depending on the level purchased. For example, SA can ensure you are no longer paying $500 per Microsoft support call; that training and development needs are subsidized or provided inclusively; that upgrades and patches remain available and support is available for installation. Volume licensing is ideal when considering larger infrastructures, with more than a trivial number of servers.

Retail Licensing, on the other hand, is fairly straightforward. Retail licensing is also called FPP (Full-Packaged Product) licensing and is normally sold through resellers. It's important to note that there are restrictions on retail licensing - only the Business Intelligence, Standard and Developer Editions of SQL Server 2012 are available through this model. Software Assurance contracts are not available with retail licensing. Since Volume Licensing is the most common model, the remainder of this article will focus on this channel.

SQL Server 2012 Standard Edition

(SQL Server 2012 Standard, Retail Edition)

SPLA and ISVR licensing is licensing offered through selected third-parties in collaboration with Microsoft. Specifications and pricing are normally handled by the third-party. Note that only Enterprise Edition, Business Intelligence Edition, Standard Edition and Web Edition are covered under this model.

SQL Server Volume Licensing

Volume Licensing can be further split down into three main types: Open (Value), Select/Select Plus and a group that includes EA (Enterprise Agreement), EAS (Enterprise Subscription Agreement) and EAP (Enrollment for Application Platform). The Open Value license is designed for small-to-medium organizations that have five or more desktop PCs. The agreement is designed to lower up-front costs for software and lasts for two years. The minimum license spend is for five licenses, but the program follows a pay-as-you-go model with the option to add or remove them at any time.

The Select and Select Plus programs are designed for midsize organizations with a distributed infrastructure. They support affiliate licensing and include Software Assurance. They have one differing feature - the Select license expires after three years, but the Select Plus license has no expiry date, allowing the organization to benefit from fixed pricing and favorable contractual terms beyond the initial contractual period. In all other feature areas, Select and Select Plus are identical.

The final group includes Software Assurance as standard. Whereas the Open and Select/Select Plus programs are transactional programs, in the sense that the service is pay-as-you-go with a service contract that doesn't significantly differ from other utility providers, the EA/EAS/EAP licensing model is for midsize to large or enterprise-level organizations. Features include volume pricing - significantly lower than for other agreements - inclusive SA, cloud service support, license management assistance, lower up-front costs and flexible subscriptions.

EA is the standard agreement where licensing needs are driven by the organization and can be thought of as a one-size-fits-all solution. EAS, in contrast, has the advantages of SA, but more flexible licensing (add/remove licenses as needed) and a fixed three-year subscription term, at the end of which the license must be renewed. EAP forms one vector ('enrollment') for Volume Licensing under the EA/EAS/EAP model and for SQL Server only the EAP applies - 'Enrolment for Application Platform'. Other vectors exist, such as the Enrollment for Core Infrastructure and Enterprise Enrollment, which both have more of an infrastructural, cross-product focus, but they either do not apply to SQL Server, or SQL Server forms a part of these which is not relevant for SQL Server-only licensing.

SQL Server Editions

The type of licensing you will purchase will be dependent on the edition of SQL Server which you purchase, which will be dependent on the features you expect from SQL Server. SQL Server 2012 comes in the following editions:

  • Enterprise Edition
  • Business Intelligence Edition
  • Standard Edition
  • Parallel Data Warehouse (PDW) Edition
  • Parallel Data Warehouse for Developers Edition
  • Developer Edition
  • Web Edition
  • Express Edition
  • Compact Edition

Each edition has limitations on the licensing models that can be used to purchase it. Please see my interpretation below, illustrating which licensing models can be used with which editions. (The Express and Compact Editions are free, and do not require licenses). Microsoft also provides a table with this information in the document entitled 'SQL Server 2012 Licensing Reference Guide', which is linked to at the end of this tip. Follow the arrows in the diagram below from your desired edition of SQL Server (or from your current licensing model) to find which editions (or licensing models) are suitable for you:

SQL Server 2012 Licensing vs. Editions

Each edition of SQL Server differs in features. For example, Developer Edition has all the features of Enterprise Edition, but cannot be used in a commercial environment. Standard Edition does not include features such as table partitioning, online index rebuilds or backup compression. Express Edition will handle databases up to 10GB in size only. Since the focus of this discussion is on licensing models rather than a blow-by-blow account of feature differences between editions, please see the More Links section for information on the different features of SQL Server and how they compare in order to make the best choice of edition for your organization's needs. The document 'What's New in SQL Server 2012' has a good summary of new features and their availability between versions, while those of you familiar with these restrictions in 2008 R2 and below will note that most restrictions still apply. See below for Microsoft's one-page summary of the feature sets that come with Enterprise, Business Intelligence and Standard Editions (note this is not a complete list):

Each edition of SQL Server differs in features.

(From Microsoft Corporation, http://www.microsoft.com/en-us/sqlserver/editions.aspx)

SQL Server Licensing - Server and CAL vs. Core-Based

Once the decision on the licensing vector is made, the DBA or organization must decide whether to license under the Server & CAL model, or under the Core-Based Licensing model. Server & CAL has been around for years, and simply refers to the model where one license applies for the server on which SQL Server is installed (note that multiple instances are allowed) and one CAL applies for the user or application service accessing the licensed SQL Server. One CAL is required for every user or application service regularly connecting to SQL Server. For example, if your organization employs 100 people, 20 of whom work in the Finance department which has two SQL Server installations on two separate servers, 2 server licenses and 20 CALs would be required. These are priced separately and the pricing for these will depend on your licensing model (whether you license through EA, EAS, EAP or third-party). Server & CAL licensing is only suitable when purchasing Business Intelligence or Standard Editions. Enterprise and Parallel Data Warehouse Editions MUST be licensed through the per-core model.

The Core-based Licensing model is new to SQL Server 2012 and replaces the Per-Processor Licensing that most DBAs are familiar with. Starting with 2012, Microsoft recognized the shift onto core-based computing, where two or more cores are used for parallelism and better efficiency on production IT systems. Microsoft decided to capitalize on this and protect the licensing fees which would arguably suffer as focus shifted from increasing the number of processors to increasing the number of cores. The new core-based system means each core used in a SQL Server installation must be licensed separately (with some exceptions, see below).

These licenses are sold in 'packs' of two and one pack of two is roughly equivalent in price to the older per-processor license. Thus, although more licenses are required (and other factors such as price adjustment and inflation have affected the 2012 price), there may not be a significant difference to the overall price when relicensing for 2012, depending on your circumstances. Note that hyper threading is ignored for core licensing purposes when licensing physical servers. The same does NOT apply to VMs - see the section below! However - something called 'Core Factor' comes into play here. Core factor refers to the factor one must multiply by when determining the licenses required, depending on the type of processor one has. AMD processors are licensed differently from Intel ones. And non-Intel, non-AMD processors are licensed differently still. Here are the rules:

Processor Type Core Factor
AMD Processors 31XX, 41XX, 42XX, 61XX, 62XX Series with 6+ cores     0.75
Single Core Processors 4
Dual-Core Processors 2
All other processors 1

Examples:

Case Licenses
Two processors, two cores per processor, core factor 2, Intel     2 x 2 x 2 = 8 licenses
One processor, four cores, Intel 1 x 4 x 1 = 4 licenses
Two processors, AMD 61XX model, eight cores 2 x 8 x 0.75 = 12 licenses

Note that when ordering the licenses, you must divide the number of licenses by two to determine how many 'packs' to order. Don't order double the amount you need by accident!

As you can see, this isn't an entirely fair model. A four-core Intel processor requires 16 licenses even though performance-wise it will be thoroughly outstripped by two processors with two cores each, due to increased parallelism. For this reason, in a single-core architecture, you may wish to make sacrifices with e.g. the edition you run (Standard Edition under Server/CAL may be cheaper) or upgrade your hardware to save money on the licensing costs.

However, things unfortunately get a little more complicated with virtual environments.

Virtualization

Microsoft stipulate that for those customers installing SQL Server in virtual environments, a core license is required for every virtual core in the virtual environment that is supported by one hardware thread (this means physical processor core OR hyperthread. Be very wary when using hyperthreading on physical machines that support VMs, as licensing costs can double despite having no additional physical computing power!). This means that if there exists a VM with multiple virtual cores, one license is required for each virtual core even if supported by fewer hardware threads than cores. However, if multiple hardware threads are supporting fewer cores, one license is required for each hardware thread. Core factoring does not apply for VMs. There is a minimum four licenses required per VM regardless of VM cores.

Examples:

1) Physical machine w/ 1 proc, 4 cores per proc, 2 x VM with 4 cores each:

8 VM cores x 1 license per core = 8 licenses required.

2) Physical machine w/ 2 procs, 8 cores per proc, 4 x VM with 4 cores each:

16 VM cores x 1 license per core = 16 licenses required.

3) Physical machine w/ 2 procs, 4 cores per proc, 2 x hyperthreaded, 1 x VM with 4 cores:

4 VM cores BUT supported by 2 x 4 cores physical x 2 threads, so 16 licenses required, no core factoring.
Virtualisation

(From 'SQL Server 2012 Licensing Reference Guide', Microsoft Corporation)

For the reason that virtualization may render the total price unfeasible, you may wish to license your virtual machines under the Server & CAL model instead. In this instance, just one server license per VM is required (CALs still required based on your user/application process base). In example number 3 above, the VM is under provisioned against the physical machine so you may wish to add more VMs so that VM core licensing is appropriate (to get better value for or even save money), or turn off hyperthreading, or go for maximum virtualization (see below for more details) to remove the need to license per core on each VM.

Note that physical licensing wins out over virtual licensing. Microsoft call this 'Licensing for Maximum Virtualization' and enables you to disregard your VM cores, so should you decide to have more VM cores than physical ones you will not necessarily be penalized. So if you decide to physically license your cores even though you're running VMs, you will be able to run SQL Server in VMs up to a maximum number equal to the number of physical core licenses you hold. For example, if you have a large server with 8 processors, 6 cores per processor, you will require 48 core licenses. But this will allow you to run up to 48 VMs with an unlimited number of cores per VM. If you wanted dual-core VMs, under the virtualization core licensing model you would be required to purchase 96 licenses, but by purchasing core licenses for the physical processors you could be required to purchase half that amount. If SA is purchased on Enterprise Edition and all physical core licenses are purchased, the one-license-per-VM rule is waived and customers are allowed to use an unlimited number of instances on an unlimited number of VMs on that server.

Also note that for Parallel Data Warehouse Edition, these rules are slightly different. All physical cores MUST be licensed regardless of VMs. PDW is used primarily in multi-stack servers with multiple nodes, called 'compute nodes', similar to clustering. Each cluster node is licensed as if it were a separate physical server.

SQL Server Mirroring and HA Licensing

The rules change slightly when considering mirroring and High-Availability, but the rules for this are quite simple.

ACTIVE -> PASSIVE configurations, such as mirrored configurations or active-passive cluster/failover configurations, do not require licenses on the mirror. Note this doesn't apply if you are using a combination of mirrored and active databases on your servers in the same instance.
ACTIVE -> ACTIVE configurations, such as clusters or HA Groups, do need licensing for every active node within the group, following the same licensing rules as described earlier in this article.

Only one passive node is waived for licensing purposes per active node. If multiple passive nodes are used, licensing on all but one of these passive nodes is required. When using active-passive configurations, the number of licenses bought must be suitable for the server with the higher number of processors/cores, as in the event of failover the passive node must be adequately licensed.

License Mobility

With the License Mobility benefit available under Software Assurance, customers can reassign licenses between servers as often as necessary within a server farm. This may allow customers to be more flexible with their server and infrastructure configurations.

Note that licensing is limited to server deployments with 20 cores in total or less per server, physical or otherwise - if any additional core licenses are required for your freshly-minted IBM behemoth, you will need to contact Microsoft directly for licensing assistance. If using Standard Edition or Business Intelligence edition, this limit is 16 cores per server.

Licensing for SQL Server 2008 R2 and Below

As this author painfully remembers, most resellers and indeed Microsoft will no longer allow the purchase of volume licenses for SQL Server products below 2012 Edition. This means that even if your organization is intent on remaining on a pre-2012 edition of SQL Server, 2012 licensing rules including the core license requirements still apply. The exception to this rule is if SQL Server 2012 Business Intelligence Edition is purchased, which does NOT allow downgrades to previous versions of SQL Server since the BI product equivalent is Standard Edition and did not exist prior to 2012.

Next Steps


Last Update: 4/24/2013


About the author
MSSQLTips author Derek Colley
Derek Colley is a SQL Server DBA based in Manchester, UK, with a focus on performance management and data architecture.

View all my tips
Related Resources


print tip Print  
Become a paid author




Recommended For You








Learn more about SQL Server tools
Comments and Feedback:
Wednesday, April 24, 2013 - 9:39:46 AM - BJ Stigall Read The Tip

I don't think your Intel example is correct.  It is a 4 core processor, not a single core processor. "One processor, four cores, Intel"  Which looks like 1x4x1 = 4. Microsoft's example is 2 Intel Xeon 6-core processors and the answer is 12.


Wednesday, April 24, 2013 - 10:06:07 AM - Derek Colley Read The Tip

@BJ Stigall - Thanks for your comment, you're absolutely correct, this is an error on my part.  Apologies for the confusion.


Thursday, April 25, 2013 - 2:13:24 PM - CJ Morgan Read The Tip

So I think your info on Standard edition not supporting Backup Compression is erroneous.  According to Microsoft's edition comparison for SQL 2012 it is supported.

http://technet.microsoft.com/en-us/library/cc645993.aspx#High_availability

Your quote:
"Standard Edition does not include features such as table partitioning, online index rebuilds or backup compression." 

The rest of the quote is correct.


Thursday, April 25, 2013 - 3:41:16 PM - CJ Morgan Read The Tip

Data Compression is NOT available with Stnadard Edition.


Thursday, April 25, 2013 - 5:05:07 PM - Derek Colley Read The Tip

@CJ Morgan - You're right, Standard Edition DOES support backup compression.  I've just tested it on a SE version of 2012 and it completed successfully.  This fact is going to upset our architect considerably.

Worth noting that 2008/R2 SE doesn't support backup compression - http://technet.microsoft.com/en-us/library/cc645993(v=sql.100).aspx hence the confusion.

Data compression - as you say, this remains unavailable in SE.

 


Monday, May 13, 2013 - 9:46:27 AM - Simon Liew Read The Tip
Hi Derek, Your comment on SQL 2008 R2 SE doesn't support backup compression is incorrect. Whilst backup compression is an Enterprise feature for SQL 2008, it's readily available in SQL 2008 R2 SE. Our organization has been using backup compression on SQL 2008 R2 since day 1.

Tuesday, May 28, 2013 - 9:50:35 AM - BeeSee Read The Tip

This did not help to clear things up for me.  From the 2012 Licensing Guide -

 

  • Count the total number of physical cores for each processor in the server.
  • Multiply the number of cores by the appropriate core factor to determine the number of licenses required

for each processor in the server. Note: The core factor used depends on the processor type deployed.

  • Purchase the appropriate number of core licenses required for each processor in the server.
  • Core licenses are sold in packs of two; so customers must divide the number of licenses required by two, to

determine the actual number of line items to order.

It clearly says the number of *physical* cores, nothing about hyperthreading doubling the license fee as your article states.

 


Thursday, June 13, 2013 - 3:55:04 PM - Da Lo Read The Tip

3) Physical machine w/ 2 procs, 4 cores per proc, 2 x hyperthreaded, 1 x VM with 4 cores:

4 VM cores BUT supported by 2 x 4 cores physical x 2 threads, so 16 licenses required, no core factoring.

 

This doesn't seem correct?

Assuming you are running SQL Server in the VM and you are licencing Per Core then you only need to licence "per virtual core". This could be a thread or a core but is shown to the VM as a core.

Therefore you would only need 4 licences not 16. There is no requirement to licence the underlying hardware if you don't use it in the VM that is running SQL Server (apart from the 4 core minimum per VM requirement).


Friday, July 12, 2013 - 9:12:22 AM - R B S Read The Tip
Do myproduct need MSSQL Server processor license?

MyProduct has Web Layer, Web Service layer and Database layer. WebService Layer talks to database via sa account defined in web.config - connectionString.

User Authentication from Web Layer (WebForm) is verified against user table in the database via webservice.

And WebService uses sa account to query the user table for authenticate and authorise to login, do i still need to suggest customer to buy SQL Processor license or SQL STD edition is sufficient.
 
occording to the microsoft multiplexing document..
Comparing Figure 1 and figure 2 - we don't need a sql processor license, STD edition fits.

I have been going over all the microsoft pages for direct answer. please failed to conclude. Neither Microsoft permium vendors are aware or able to provide the answer.

Wednesday, August 21, 2013 - 8:45:21 PM - John Read The Tip

@ Da Lo

Agreed that does not seem correct to me either.


Tuesday, November 05, 2013 - 12:24:30 PM - Jeff Read The Tip

After reading the article and comments, I am still confused what I need. We're a small machine shop, looking at an ERP app that needs SQL. I am told Standard is sufficient. We'll never grow above 1 server and 5 users. What is my best SQL 2012 option (least expensive)? Virtualization is not in the cards....I don't know what it would do for us.

 

Thanks


Tuesday, November 05, 2013 - 1:14:12 PM - Greg Robidoux Read The Tip

@Jeff, based on what you mentioned you could use either the Standard edition or the Express edition (free).  The other editions wouldn't make sense.

The Express edition doesn't have all of the features of Standard, but if you are just using the database engine you might be fine.  There are some limitations as far as database size (10GB) and CPUs (1 socket or 4 cores) and SQL Memory (1GB).

Take a look at this web page for more information: http://msdn.microsoft.com/en-us/library/cc645993.aspx


Wednesday, January 08, 2014 - 4:25:06 AM - David Read The Tip

Hi there,

For anybody having issues with licensing, I'd suggest contacting a reseller, or there is also a very simple Microsoft License Advisor (MLA) that I'd suggest: http://mla.microsoft.com/default.aspx - for anyone who is having difficulty working out the correct licence quantity requirement.

Regards,

David



Post a Comment or Question

Keep it clean and stay on the subject or we may delete your comment.
Your email address is not published. Required fields are marked with an asterisk (*)

*Name   *Email Notify for updates

Signup for our newsletter


Comments
*Enter Code refresh code


 
Sponsor Information







Copyright (c) 2006-2014 Edgewood Solutions, LLC All rights reserved
privacy | disclaimer | copyright | advertise | about
authors | contribute | feedback | giveaways | user groups | community | events | first timer?
Some names and products listed are the registered trademarks of their respective owners.