Some SQL Server Licensing Scenarios

 

I recently was asked about licensing SQL Server in the following two scenarios that may be confusing at times

  • Can i only license a portion of the physical processors for SQL Server by restricting SQL Server’s usage of the processors by using the Affinity Mask option:

No, you have to license all the processors. The only time you license a portion of the processors is if you are in a virtual environment where only a subset of the processors are assigned to the VM or if the machine is hardware partitioned so the OS only sees a subset of the processors.

The following link although created for SQL 2000 still applies and answers this question:

https://download.microsoft.com/download/9/2/3/9237f42f-ad7c-420e-968c-0345007168e9/per_processor.doc

The last question answers this, pasted below:

QUESTION: I use “affinity masking” in SQL 2000 Server to restrict SQL to a subset of the processors on a server. I don’t employ partitioning or virtualization technology. Can I license only those processors to which I have “affinitized” SQL?

ANSWER:No – While affinity masks link threaded operations of software like SQL Server to particular processors in a server, they do not link threaded operations that are executed by the operating system on behalf of SQL Server to specific processors. In other words, affinity masking does not isolate operating system copies from processors. All server applications, like SQL Server, are installed on specific operating system copies, and the operating system copies utilize the power of processors beyond those specifically linked in the affinity mask. Like other resource-management methods, affinity masking does not isolate processors from an operating system, and hence does not reduce the need for those processors to be licensed.

The SQL affinity setting is deprecated and will be removed in a future version of SQL Server, look at this BOL topic: https://msdn.microsoft.com/en-us/library/ms187104.aspx

 

  • How to license SQL Server Reporting Services in a scale-out deployment model?

You have to license each of the servers in the farm for a SQL Server EE license as they are all used and running active workloads (i.e. not specifically for DR scenarios like log shipping, passive cluster). 

Please refer to the attached licensing guide, page 46 that states this clearly: Licensing Guide