November 28, 2012 at 7:56 am
Out product is based on SQL Server 2012 and comes with a core license or with a server+CAL license (based on the customers order). We want to offer our customers the possibility to exchange the SQL Server 2012 instance on which our product is built up (uninstall server+CAL licensed instance and install core licensed instance OR using their own existing SQL Server instance).
Therefore I have to find out a way of determining wether an existing SQL Server 2012 installation uses a core license or a server+CAL license. This information is needed for correct user management in our extensions of SQL Server 2012, so the mechanism for getting the information needs to be automatable.
Is there any way of getting that information (apart from asking the cutomers IT guy)? Thanks a lot!
November 28, 2012 at 9:48 pm
select @@VERSION
November 28, 2012 at 11:53 pm
Thanks for the answer, but the output of SELECT @@VERSION does not contain any information about server+CAL or core license. Here is the output:
Microsoft SQL Server 2012 - 11.0.2376.0 (X64)
Aug 15 2012 16:39:20
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
Additional Info: In addition to @@VERSION I have already examined all SERVERPROPERTY fields without finding the required information.
November 29, 2012 at 12:04 pm
I haven't tried this with standard, but it does for enterprise:
Microsoft SQL Server 2012 - 11.0.2383.0 (X64)
Oct 5 2012 19:35:54
Copyright (c) Microsoft Corporation
Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
Microsoft SQL Server 2012 - 11.0.2100.60 (X64)
Feb 10 2012 19:39:15
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.0 <X64> (Build 6002: Service Pack 2)
November 30, 2012 at 12:15 am
Running this statement on an SQL Server 2012 Standard core-licensed instance, I get the following output:
Microsoft SQL Server 2012 - 11.0.2218.0 (X64)
Jun 12 2012 13:05:25
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
This output does not differ from the previously shown output on an SQL Server 2012 server+CAL licensed instance (ignoring the different version numbers). So it seems, that the statement includes the core license information only when an enterprise license is used.
November 30, 2012 at 6:54 am
How does SQL Server itself know how it is licensed? I thought when SQL 2005 came out Microsoft removed the ability to even tell SQL whether it was licensed by Proc or by Server + Cals. I've been under the impression that is all managed logically now.
Is there a different install for Core licensing vs Server + CAL licensing?
November 30, 2012 at 6:58 am
SQL doesn't know how it is licensed, due to the number of possibilities that a server can be licensed. It is up to the company to ensure that they assign licenses logically and that they purchase more when they need more.
November 30, 2012 at 3:07 pm
There is a different set of binaries for 2012 Enterprise because server+cal licensed sql 2012 ent is limited to 20 cores and core licensed is not.
So, 2012 Ent is the example where Sql knows how it's licensed and behaves differently.
October 4, 2013 at 1:34 pm
Can someone explain how to count the number of CALS within a SQL instance? For example, if there are 4 databases within a SQL instance and by going to the Properties/Options it determines the max count since sql was last started for the 1st database out of the 4 is = 4. Furthermore, the rest of the databases have the same max value of 4. Ddoes this mean there are 16 CALS or 4 concurrent user CALS for the SQL instance?
October 4, 2013 at 1:39 pm
Sorry typo in previous statement, it should read as the following..
Can someone explain how to count the number of CALS within a SQL instance? For example, if there are 4 databases within a SQL instance and by going to the Properties/General("Number of Users") it determines the max count since sql was last started for the 1st database out of the 4 is = 4. Furthermore, the rest of the databases have the same max value of 4. Does this mean there are 16 CALS or 4 concurrent user CALS for the SQL instance?
July 19, 2016 at 12:37 am
Not sure...but you see how many current live connections there using
select * from sys.dm_exec_connections
or select * from sys.sysprocesses where spid>50
This will give you connections which is more relevant when talking about licensing.
Viewing 11 posts - 1 through 10 (of 10 total)
You must be logged in to reply to this topic. Login to reply