A Guide To Assessing SQL Licensing
A Guide To Assessing SQL Licensing
This document gives Microsoft Volume Licensing customers of Microsoft SQL Server 2008 R2 an
overview of the licensing requirements, as well as guidance on how to assess the licenses needed.
(For those licensed under any other version of SQL Server, please refer to the appropriate Product Use
Rights (PUR) document or End User License Agreement (EULA) for guidance.)
The Software Usage Tracker, a tool in the Microsoft Assessment and Planning (MAP) Toolkit, collects and
reports server and agent use of common deployment scenarios for SQL Server products. Using the data
from this tool, along with the step-by-step instructions on the pages that follow, can help you calculate the
number and type of processor licenses, or server and client access licenses (CALs), that you need.
Terms of Use
This document is for informational purposes only and is subject to change. It cannot be considered a source of definitive
Microsoft licensing guidance.
This does not supersede or replace your use rights to any product as defined in the Microsoft Volume Licensing agreement
under which it was acquired, and/or the Microsoft Volume Licensing Product List document and the Microsoft Volume
Licensing Product Use Rights (PUR). Product licensing, program licensing, and business rules are subject to change.
Contents
Microsoft SQL Server Licensing Requirements ............................................................................. 1
Server and CAL Licensing .............................................................................................................................. 2
Server licenses ........................................................................................................................................... 2
CALs ........................................................................................................................................................... 3
Per-Processor Licensing ................................................................................................................................. 5
Licensing physical processors .................................................................................................................... 5
Licensing by virtual machine ....................................................................................................................... 6
Additional Licensing Considerations ............................................................................................................... 6
License mobility .......................................................................................................................................... 6
Passive failover rights ................................................................................................................................. 7
Version and edition: Upgrades and downgrades ........................................................................................ 7
Note on mixed licensing environments ....................................................................................................... 8
SQL Server 2008 R2 Developer ................................................................................................................. 8
Open
Programs
Retail Full
Packaged
Product
(FPP)
OEM
Services
Provider
License
Agreement
(SPLA)
ISV Royalty
(ISVR)
Enterprise
Agreement
(EA)
Enterprise
Agreement
Platform
(EAP)
SQL Server
2008 R2
Datacenter
(Premium
Edition)
SQL Server
2008 R2
Enterprise
SQL Server
2008 R2
Standard
SQL Server
2008 R2
Web
SQL Server
2008 R2
Workgroup
SQL Server
2008 R2
Developer
SQL Server 2008 R2 editions are licensed either through the server license and client access license
(CAL) model or the per-processor licensing model. With the exception of SQL Server 2008 R2 Datacenter
and SQL Server 2008 R2 Web (which are only licensed by processor), you may choose the licensing that
best fits your specific business needs.
Before you run any instance of the server software under a software license, you must assign that license
to one of your physical servers. That physical server then becomes the licensed server for that particular
server software license. You may assign other software licenses to the same server, but you may not
assign the same license to more than one server. A hardware partition or blade is considered to be a
separate server.
You may reassign a license to another physical server once every 90 days. However, you may not
reassign an OEM license unless you first acquire Software Assurance (SA) for it.
On the other hand, you may move as often as you want a virtual instance of SQL Server to another server
that is properly licensed to support it. To track this, Microsoft recommends that you keep a current record
of all assigned servers, license type, SA coverage, and the date the server was assigned or reassigned.
For more information on licensing and virtualization, refer to Licensing Microsoft Server Products in Virtual
Environments.1
Server licenses
Server licenses for SQL Server 2008 R2 are available for Enterprise, Standard, and Workgroup editions.
Unlike other products following this licensing model, Microsoft does not offer an External Connector
license for SQL Server.
Standard and Workgroup Editions. Each server license for these editions permits you to run
unlimited instances of the software in one OSE or virtual machine (VM). To run the software in
additional OSEs or VMs, you require additional server licenses.
Enterprise Edition. Each server license for the Enterprise edition permits you to run unlimited
instances of the software in up to four OSEs or VMs.
microsoft.com/downloads/details.aspx?FamilyID=9ef7fc47-c531-40f1-a4e9-9859e593a1f1
CALs
CALs are available for each edition of SQL Server 2008 R2 shown below.
Product
Applicable CALs
A user CAL allows the user to access SQL Server from any number of devices. A device CAL allows any
number of users to access SQL Server from that device. In addition:
A given user or device needs only one SQL Server CAL to access any number of SQL Server
instances in the organization. Note that users or devices accessing SQL Server components, such
as Reporting Services, require CALs.
SQL Server CALs can be used to license any platform of SQL Server: 32 bit, 64 bit, and IA64.
The CAL requirements are the same for VMs as they are for physical servers.
CALs permit access to instances of earlier versions, but not later versions, of SQL Server.
Multiplexing
If the SQL servers in your organization have been licensed using both server and CAL and Per processor
licensing models, then check for any multiplexing scenarios in your organization and ensure that you are
licensed correctly:
For example if a SQL Server in your organization is licensed per processor and there is direct or indirect
access between this server and another SQL Server in your organization that is licensed Server-CAL,
then all the users accessing the SQL Server that is licensed per processor need SQL Server CALs. In this
scenario, the SQL Server that is licensed per processor is considered to be a multiplexing device.
Use of hardware or software that reduces the number of devices or users that directly access or use the
software (multiplexing, or pooling) does not reduce the number of CALs required, as illustrated on the
next page.
Per-Processor Licensing
To help alleviate the complexity of licensing, you can license SQL Server by processor. In this model, you
do not need to purchase CALs because the license includes access for an unlimited number of users or
devices to connect from either inside or outside the firewall, including users or devices that do not belong
to the licensed entity. If you license by processor, you need to license each OSE running SQL Server or
any of its components-for example, Analysis Services. For SQL Server running in physical OSEs, you
must license all the physical processors.
Processor licenses for SQL Server 2008 R2 are available for Datacenter, Enterprise, Standard, Web, and
Workgroup editions.
License SQL Server by processor when:
The number of users or devices is great enough that licensing per processor is more cost effective
than the Server and CAL model. (Processor licenses cost the same regardless of the number of
cores in the processor.)
SQL Server 2008 R2 Datacenter requires that all the physical processors on the server are licensed
and at least two processor licenses are assigned to the server.
B: Number of cores (if hyperthreading is turned off) or threads (if hyperthreading is turned on) per
physical processor.
Formula:
A B = Number of processor licenses required.
Round up fractional results to the next whole number.
B: Number of cores or threads per physical processor or socket
A: Number
of logical
processors
supporting
the VM
Within a server farm. You may move properly licensed running instances of SQL Server 2008 R2
Enterprise and Datacenter freely across servers. (There is no 90-day minimum period before
reassignment of licenses.)
In different server farms. You may reassign SQL Server 2008 R2 Enterprise and Datacenter server
licenses to any of your servers located in different server farms, but not on a short-term basisthat
is, not within 90 days of the last assignment.
Under the server and CAL model. You may move SQL Server2008 R2 Enterprise licenses
amongst the servers in your server farm freely and as often as you want without the 90-day
restriction on reassignment.
Under the per-processor model. Count the greatest number of physical processors that may
support running instances of SQL Server at any one time across the server farm. If you are not sure
about which physical processors support SQL Server, count all the processors. Assign this number
of licenses to the server farm.
You may run an unlimited number of instances of:
SQL Server 2008 R2 Datacenter in an unlimited number of OSEs.
SQL Server 2008 R2 Enterprise in a number of OSEs equal to four times the number of licenses
assigned.
Note: Each datacenter may be part of only one server farm. You may reassign a datacenter from one
server farm to another, but not on a short-term basis--that is, not within 90 days of the last assignment.
Description
Eligibility
Downgrade rights are granted for all licenses (with or without SA)
acquired through Volume Licensing.
Down-edition
right
Edition
step-up
Note: When using version downgrade or down-edition rights, the product use rights for the originally
licensed version or edition still apply.
Configure your network scan range to take licensing variations of products into account. The
Software Usage Tracker Guide explains how to exclude network segments or specific devices from
the scan.
Scan servers that are licensed under the server and CAL licensing model separately from servers
that are licensed by processor licensing model.
Exclude servers subject to different licensing obligations, like development or test servers licensed
under the MSDN developer program.
Make note of network segments that you exclude due to licensing variations to ensure that you
correctly account for their licensing later. For example, make sure that you have MSDN licenses for
servers licensed under MSDN programs.
10
11
5. Click Virtual Machine Discovery to get an inventory of VMs and guest operating systems.
6. To generate the second report, under Actions, click Generate Report to create the Virtual Machine
Discovery report in Excel.
This spreadsheet gives details on physical servers running VMs and the host-to-guest relationship
for virtualized servers.
12
7. Under Inventory and Assessment, click Inventory Summary Results to see the summary
information on computers and operating systems that the MAP tool discovers.
8. Under Actions, click Generate Report to create the third Excel report, Inventory Summary.
This spreadsheet gives details on all the physical and virtual machines that MAP inventoried.
13
14
Example
The Computer Name, CE4P-3E32-R2-1.MAP.COM, has two running instances of SQL Server as
shown below:
Machine Type
SQL Service State
Physical
Running
Row Labels
CE4P-3E32-R2-1.MAP.COM
Microsoft SQL Server 2005
Standard Edition
Microsoft SQL Server 2008 R2
Enterprise Edition
2. Determine the highest edition and latest version of SQL Server running by taking into consideration
the multi-instancing, prior-version, and down-edition rights for SQL Server.
Note: Licenses of SQL Server Enterprise versions before 2008 R2 have prior-version rights but do
not have down-edition rights.
3. Repeat Step 2 above for every value of the Computer Name in the pivot table, and then generate a
summary table as shown below.
Physical OSE Licensing
CE4P-3E32-R2-1.MAP.COM
Computer B
Computer C
15
Virtual Server A
Virtual Server B
Virtual Server C
Virtual Server A
Virtual Server B
Virtual Server C
16
Count licenses: Optimizing license counts for physical and virtual OSEs
Once you have assessed the instances running the physical and virtual OSEs as described in the earlier
sections, you are ready to calculate the final license count.
1. In the Physical OSE Licensing table for every Computer Name (Physical), check if it is associated
with any Computer Name (Virtual) in the Virtual OSE Licensing table.
If NO, then you need a license for the highest edition and latest version of SQL Server running for
that Computer Name (Physical).
If YES, then follow Step 3 below.
2. If the Computer Name (Physical) is associated with one or more Computer Name (Virtual) in the
Virtual OSE Licensing table you can choose to either:
License each individual OSE separately by licensing it for the highest edition and latest version of
SQL Server running; or
Take advantage of the enhanced virtualization rights in SQL Server 2008 R2 Enterprise that allow
you to run SQL Server 2008 R2 Enterprise (or lower editions and earlier versions) in up to four
OSEs/VMs on the server for each license assigned.
Note that versions of SQL Server licenses before 2008 R2 have only the prior-version rights and
do not have down-edition rights. Based on this information make sure that each such set of
physical and virtual OSEs are licensed.
3. For each Computer Name (Virtual) in the Virtual OSE Licensing table, verify if the associated
Computer Name (Physical) is already identified as a server running SQL Server in the Physical OSE
Licensing table:
If it is not, then:
- Computer Name (Virtual) needs a license for the highest edition and latest version of SQL
Server running as per the table.
- If multiple Computer Names (Virtual) are associated with the same Computer Name (Physical),
you can either choose to license each individual Computer Name (Virtual) separately as in Step
1 above or take advantage of the enhanced virtualization rights in SQL Server 2008 R2
Enterprise that allow you to run SQL Server 2008 R2 Enterprise (or lower editions and earlier
versions) in up to four OSEs/VMs on the server for each license assigned.
Note that versions of SQL Server licenses before 2008 R2 have only the prior-version rights
and do not have down-edition rights. Again, make sure that each such group of OSEs and VMs
are licensed properly.
If it is, then you have already covered the licensing in Step 2 above.
17
If you license SQL Server with a combination of user and device CALs, that would reduce the total
number of CALs you need, but you must calculate the licenses manually.
If you are running SQL Server licensed under more than one licensing model, make sure that you
have the appropriate number of CALs by checking for any multiplexing scenarios in the deployment.
(For more information about multiplexing, see page 3.)
18
19
Example
The physical machine, CE4P-3E32-R5-1.MAP.COM, has running instances of SQL Server as shown
below. The Physical OSE/Server is accessing two processors.
Machine Type
SQL Service State
Physical
Running
Row Labels
CE4P-3E32-R5-1.MAP.COM
Microsoft SQL Server 2005
Enterprise Edition
Microsoft SQL Server 2008 R2
Enterprise Edition
Note: The physical server has two processors and will need two processor licenses for the highest
edition and latest version of SQL Server software running in the OSE, which is SQL Server 2008 R2
Enterprise.
2. Determine the highest edition and latest version of SQL Server running in OSE by taking into
consideration the multi-instancing, prior-version, and down-edition rights for SQL Server 2008 R2.
Note: Licenses of SQL Server versions before 2008 R2 have prior-version rights but do not have
down-edition rights.
3. Repeat Step 2 for every value of the Computer Name in the pivot table, and then generate a
summary table as shown below.
Physical OSE Licensing
Number of Processors
CE4P-3E32-R2-1.MAP.COM
Physical Server B
Physical Server C
20
Computer
Name
(Physical)
Computer
Name
(Virtual)
Computer A
Number of
logical
processors
Cores/
Threads per
physical
processor
Number of
virtual
processors
Computer B
Computer C
ii.
21
6. In the Pivot Table, look up each Computer Name (Virtual) listed in the Virtual OSE Licensing table
and find the associated Physical Server Name. (Note that the Computer Name (Virtual) and Virtual
Machine FQDN are analogous.) Add the additional data into the Virtual OSE Licensing table from the
previous section.
Virtual OSE Licensing
Computer
Name
(Physical)
Computer
Name
(Virtual)
Physical
Server A
Computer A
Physical
Server B
Computer B
Physical
Server C
Computer C
Number of
logical
processors
Cores/
Threads per
physical
processor
Number of
virtual
processors
22
10. In the Virtual OSE Licensing table below, for every row divide the Number of logical processors by
the Cores/Threads per physical processor. Round up the result to the next whole number if
required and enter it in the column labeled Number of virtual processors.
Virtual OSE Licensing
Computer
Name
(Physical)
Computer
Name
(Virtual)
Physical
Server A
Computer A
Physical
Server B
Computer B
Physical
Server C
Computer C
Number of
logical
processors
Cores/
Threads per
physical
processor
Number of
virtual
processors
Count licenses: Optimizing license counts for physical and virtual OSEs
Once you have assessed the instances running the physical and virtual OSEs as described in the earlier
sections you are ready to arrive at the final license count.
1. In the Physical OSE Licensing table, check for every Computer Name (Physical) to see if it is
associated with any Computer Name (Virtual) in the Virtual OSE Licensing table.
If NO, then you need a license for every processor (Number of Processors) for the highest edition
and latest version of SQL running for that Computer Name (Physical).
If YES, then follow Step 2.
2. If the Computer Name (Physical) is associated with one or more Computer Names (Virtual) in the
Virtual OSE Licensing table, for that Computer Name (Physical) select the better or cheaper of the
following two options, A and B:
License each individual OSE separately by:
A. Licensing each processor (Number of Processors in the Physical OSE Licensing table) in the
Computer Name (Physical) for the highest edition and latest version of SQL Server running,
and
B. Licensing each processor (number of virtual processors in the Virtual OSE Licensing table) in
each Computer Name (Virtual) associated with the Computer Name (Physical) in the previous
step for the highest edition and latest version of SQL running.
License each processor (Number of Processors in the Physical OSE Licensing table) in the
Computer Name (Physical) with either SQL Server 2008 R2 Datacenter or SQL Server 2008 R2
Enterprise.
As mentioned earlier, when you license all the physical processors you get enhanced virtualization
rights as described in the table below. Combined with the prior-version and down-edition rights,
23
licensing Computer Name (Physical) with these higher editions of SQL Server could economically
cover the licensing requirements of all the Computer Name (Virtual) associated with the Computer
Name (Physical). Your selection of edition should be based on the number of OSEs running SQL
Server in the Computer Name (Physical).
Edition
Unlimited.
3. In the next step, for each Computer Name (Virtual) in the Virtual OSE Licensing table, verify if the
associated Computer Name (Physical) is already identified as a server running SQL Server in the
Physical OSE Licensing table.
If it is not, then:
- Computer Name (Virtual) needs a license for the highest edition and latest version of SQL
running as for every processor (number of virtual processors in the Virtual OSE Licensing
table).
- If multiple Computer Names (Virtual) are associated with the same Computer Name (Physical),
follow the options as described in Step 2 (starting on the previous page).
If it is, then you have already covered the licensing in Step 2 (on the previous page).
24
Detailed SQL Server product information including new version features and edition comparisons:
microsoft.com/sqlserver/en/us/default.aspx
SQL Server 2008 R2 Licensing Quick Reference Guide explains the basics of how SQL Server is
licensed and sold:
microsoft.com/sqlserver/en/us/get-sql-server/how-to-buy.aspx
The Software Dependency Guide lists the dependent licenses required for SQL Server under
Volume Licensing:
http://download.microsoft.com/download/1/5/C/15CCF7C4-403D-4893-988B58FD7B8BC87D/Software_Dependency_Guide.docx
Volume Licensing Briefs provide in-depth knowledge of key licensing topics, including product
downgrade rights, step-up licensing, and multiplexing:
microsoft.com/licensing/about-licensing/volume-licensing-briefs.aspx
25
microsoft.com/sam/en/us/briefs.aspx
26