How to view SQL Server licenses

Solution 1:

Found this entry, which recommends to run this, in Query Analyzer:

select serverproperty('LicenseType'),serverproperty('NumLicenses')

"If the above query returns DISABLED then locate this "sqlslic.cpl" file in SQL server folder(C:\Program Files\Microsoft SQL Server\80\Tools\Binn), Right Click-> Open with Control Panel. this will show you the licensing type used"

Also:

"DISABLED usually means you are using an MSDN copy of SQL Server (so, not a production license - MSDN licenses are meant for development and testing)."

Solution 2:

Per https://msdn.microsoft.com/en-us/library/ms174396.aspx:

LicenseType is Unused. License information is not preserved or maintained by the SQL Server product. Always returns DISABLED.

This is true for 2005+, so it does NOT mean that you are using an unlicensed version, contrary to the previous answer.


Solution 3:

I know this post is older, but haven't seen a solution that provides the actual information, so I want to share what I use for SQL Server 2012 and above. the link below leads to the screenshot showing the information.

First (let's break it down):

SQL Server 2000:

SELECT SERVERPROPERTY('LicenseType'), SERVERPROPERTY('NumLicenses')

SQL Server 2005+:

The "SELECT SERVERPROPERTY('LicenseType'), SERVERPROPERTY('NumLicenses')" is not in use anymore. You can see more details on MSFT documentation: https://docs.microsoft.com/en-us/sql/t-sql/functions/serverproperty-transact-sql?view=sql-server-2017

SQL Server 2005 - 2008R2 you would have to:

Using PowerShell: https://www.ryadel.com/en/sql-server-retrieve-product-key-from-an-existing-installation/

Using TSQL (you would need to know the registry key path off hand): https://docs.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-server-registry-transact-sql?view=sql-server-2017

SQL Server 2012+

Now, you can extract SQL Server Licensing information from the SQL Server Error Log, granted it may not be formatted the way you want, but the information is there and can be parsed, along with more descriptive information that you probably didn't expect.

EXEC sys.sp_readerrorlog @p1=0, @p2=1, @p3=N'licens'

Example output:

Example output from sys.sp_readerrorlog