Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Imagine this Scenario. Say you purchased SQL Server 2008 under a 5 CAL License. A sixth person makes a query from his machine (e.g. through a VBScript). Why doesn't Microsoft put restrictions in the SQL software to stop this sixth connection?

As you all know, currently, SQL server licensing is purely paper based with no electronic license like ALL the other softwares in this world. Anybody know why Microsoft does this?


share|improve this question

closed as off topic by ceejayoz, Ward, mdpc, Joel Coel, ThatGraemeGuy Nov 8 '11 at 6:44

Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

This isn't really answerable, unless someone in charge of MS's SQL team happens to chime in w/ an answer. – Ward Nov 8 '11 at 4:52
They actually used to do this back in SQL Server 7/2000 days and it was a mess. The same user could connect from multiple computers and end up with multiple licenses in use, etc. Everyone simply configured there server with the maximum number of CALs and moved on. It was decided that it was simply easier to make it the honor system and be done with it. – mrdenny Nov 8 '11 at 8:38
up vote 1 down vote accepted

Because it is not THAT easy. There are a lot of scenarios where for example a SQL Server has connections open that do not require a CAL. Cross database links (user needs to have one to database a, then can connect to dataase b). Multiple servers (a CAL is iirc for SQ LServer , regardless how many servers you use - so how can server A know the company wide picture?).

In most cases from a servers point of view the licensing cann not be checked in all edge cases.

share|improve this answer


More seriously - CALs are concurrent licenses. In a 5 user environment, you'd have to have all 5 users accessing the database simultaneously before the 6th one kicked off. Similarly, CALs can be by User or by Device. In the event of a User CAL situation, you could have one user, with valid CAL, logged in 2 different machines making queries of the database. It's not worth the trouble to try to code the application to a) be CAL-type aware and b) somehow make sense of all the edge cases of multiple user access to a server/application. Far better/easier/more profitable to let the software allow you to be out of compliance, and then subject to huge fines if you're caught in an audit.

share|improve this answer
Thanks for the answers. But does Microsoft actually fines people?Also, correction, CAL is not concurrent users. It is number of users. If there are 10 users accessing 10 different times, it is still considered as 10 users. – user1034912 Nov 8 '11 at 4:54

Not the answer you're looking for? Browse other questions tagged or ask your own question.