July 7, 2008 at 10:53 am
In SQL Server 2000, you could go to the control panel and open SQL Server 2000 Licensing Setup to determine which flavor of SQL Server was installed. Where do I find the same information in 2005? I looked at LicenseType in serverproperty, but it showed disabled and I know when I upgraded from 2000 to 2005 I told the install it is a per processor license. Thanks in advance for your help.
July 7, 2008 at 12:43 pm
Tracking License Information in SQL 2005
SQL 2005 no longer tracks licensing (per seat or per processor) via registry entries. SQL 2005 still reads the registry for this information, but the SQL 2005 setup doesn’t put licensing information in the registry during setup as in SQL 2000.
This is by-design. Hence, when ServerProperty(‘LicenseType’) is run on a SQL 2005 installation, ‘DISABLED’ is always returned.
This could be a problem for large companies who would like a programmatic way to track licensing rather than just having paper license tracking (which is the current method in SQL 2005).
Supported Resolution
Since SQL 2005 still queries the registry for licensing information, add the following key and values and ServerProperty(‘LicenseType’) will return license information.
Note: Licensing has always been server wide and not SQL instance specific. This setting would apply to all instances of SQL Server on the server.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\90\MSSQLLicenseInfo\MSSQL9.00
If you want to configure SQL Server for Per Processor then add these Registry Values under that Key adjusting for the number of processors you have a license for:
Name Type Value
Mode REG_DWORD 2 ß LICENSE_MODE_PERPROC
ConcurrentLimit REG_DWORD 4 ß Number of Processors
If you want to configure SQL Server for Per Seat licensing then add these Registry values under the Key adjusting for the number of seat license you have purchased.
Name Type Value
Mode REG_DWORD 0 ß LICENSE_MODE_PERSEAT
ConcurrentLimit REG_DWORD 100 ß No. of client licenses registered for SQL Server in Per Seat mode.
Test in SQL Management Studio
You need to stop and restart SQL Server 2005 before the information will be available to ServerProperty() as the registry is read on start-up of SQL Server. With the above settings you would see the following when you restart SQL Server 2005.
SELECT ServerProperty('LicenseType') as LicenseType, ServerProperty('NumLicenses') as ProcessorCount
Output:
LicenseType ProcessorCount
PER_PROCESSOR 4
July 7, 2008 at 1:11 pm
Thanks, Kevin, very helpful information.
Glenn
July 7, 2008 at 1:25 pm
My pleasure. There were several changes to server property which caused many of us some headaches.
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply