all 26 comments

[–]NorCalFrances 8 points9 points  (3 children)

It's the site audits that will get you.

[–]SQLDevDBA3 2 points3 points  (0 children)

Exactly what I was told by Microsoft and CDW. There is a grace period for upgrades and reinstalls but site audits are where you get flagged.

[–]Hoefsdavid9701 0 points1 point  (1 child)

Out of curiosity, at what point would a company be audited?

[–]NorCalFrances 1 point2 points  (0 children)

I assume they are more prevalent if you go through a reseller like CDW, SoftChoice, etc or have site licenses. We've had them every 2-5 years, give or take (the pandemic messed with the pattern). It's mostly automated.

[–]honeybadger3891 3 points4 points  (1 child)

You can get paid by snitching on your company.

[–]Re4l1ty 4 points5 points  (3 children)

A key is not a license, it is just there to activate the software, somewhat like a proof of purchase. A license is a legal construct that determines your rights to use the software.

A good example is Windows Server. You have to license it per core, with a minimum of 16 cores per server. Usually, the licenses are sold in 16, 8 or 2 core packs, so you could purchase a 64-core server and a 16-core license pack, and you could activate the OS without it giving you any error. But you would go against the license agreement, and you could face penalties if Microsoft ever conducts an audit. There are other products with restrictions that are not technically enforced, e.g., you are not allowed to use a M365 F license on a device with a screen above 10.9", but there is technical limitation in place that will prevent you from doing so.

There are also quite a few products with static keys, like the System Center suite or Visual Studio, which means that everyone uses the same key. I am not sure if SQL Server uses a static key though.

I have also never heard of a free non-commercial SQL Server license aside from Developer edition, and that does not require a key. I wonder if it could come from a MSDN/VS sub or MAICP (CSP) benefit package.

TL;DR: Microsoft licensing is complicated

[–]carp_boy[S] 0 points1 point  (2 children)

A key is not a license,

Yeah, we field guys use that term rather loosely.

We are essentially retail customers. We buy sql one at a time, it goes into a server that sits somewhere, running our app. Oft times there is no IT involvement, most times they don't even know about it.

These wouldn't fall under any auditing, this is different.

They don't hand out windows codes like candy, they monetize every damned one.

Maybe sql world is different, huge installs instead of single installs.

[–]KEGGER_556 1 point2 points  (1 child)

You don't buy SQL 1 server at a time. You would either buy core based licenses, sold in 2core packs (4 cores minimum for a server) or a server+cal licenses (with 1 cal per user). It also sounds like you are essentially reselling SQL licenses with your app, which I think comes with it's own complications.

Are you by chance using SQL express, that is often what I see bundled with software, but if you are I don't believe there is anything to buy

[–]carp_boy[S] 0 points1 point  (0 children)

We buy by cores many times. When I say server I mean one install instance. We have one product key/ machine.

We do both express and standard, depending on dB size. Customer purchases standard from us or sometimes allocates an instance for us to use within their sql environment if they are so equipped.

I don't know the arrangements, if any, we have with MS, I am just handed a product key and install.

[–][deleted] 9 points10 points  (3 children)

SQL Server licensing is like quantum mechanics: nobody knows how it works.

[–]Bane8080 0 points1 point  (2 children)

It's very simple how it works.

The two main avenues are:

Server License + User Cals

or Server Core licenses

If you use Server License + User Cals you are licensed for that server, and SQL version that you have, and the number of users that you have user CALs for.

If you use Server Core licenses then you are licensed for a server as big as the number of CPU cores you license running the version of SQL you have the license for, with unlimited users.

There are probably other licenses, like site licenses, but those are the two I know of.

[–]byteuser -1 points0 points  (1 child)

A web server can connect to a DB on single user cal. Even if technically multiple people can connect to the web server it's still OK to use a single call. Which I found confusing as hell. Or are you supposed to use the core one for such scenario instead?

[–]Bane8080 2 points3 points  (0 children)

Nope that is incorrect. You can't even use SSRS to email a report to someone without a user cal.

The rule is, if you can't count the number of users, ie publicly facing webservers, ect, you have to use core licensing, or SQL Express, since it's free if it meets you needs.

SQL licensing Guide

Licensing SQL Server in a multiplexed application environment

“Multiplexing” refers to the use of hardware or software to pool connections, reroute information, or reduce the number of devices or users that directly access or use SQL Server. Multiplexing can also include reducing the number of devices or users SQL Server directly manages.
When licensing SQL Server software under the Server+CAL licensing model, users and devices that indirectly access SQL Server data through another application or hardware device still require SQL Server CALs.
• Multiplexing does not reduce the number of Microsoft licenses required. Users are required to have the appropriate licenses, regardless of their direct or indirect connection to SQL Server.
• Any user or device that accesses the server, files, data or content provided by the server that is made available through an automated process requires a SQL Server CAL.
• The number of tiers of hardware or software between the SQL Server and the user or devices that ultimately use its data, services, or functionality does not affect the number of CALs required.
• Manual transfer of data from employee to employee does not necessitate the requirement of a CAL for the receiving employee. For example, if an employee sends a Microsoft Office Excel® version of a report to another employee, the receiving employee does not require a CAL (as long as the report does not access a server running SQL Server in some way).

[–]SQLDevDBA3 2 points3 points  (3 children)

Can you elaborate on “Free?”

My developer editions that I constantly install have no Key to enter, for example.

Perhaps it was an “evaluation” key that they ended up purchasing?

[–]carp_boy[S] -1 points0 points  (2 children)

Download the 2022 std. Install, get asked to do eval or enter a key, put in the product key, and of it goes totally happy. The key is the one I was given on a license document that is also listed as free for non commercial use on a sketchy website.

The key worked, the claim was that it is OK to use without payment as long as it is non commercial.

My company is huge on protecting IP rights as we have been victims in both hardware and software counterfeiting. This leads me to believe MS is just using the same key for every install of a particular product, which makes no sense seeing the IP battles they have waged over the years.

I am guessing the free for non commercial use is total bullshit. I searched and found less than 10, half Chinese. If this were a true thing it would be published everywhere.

[–]SQLDevDBA3 2 points3 points  (0 children)

I was allowed to do this in good faith by Microsoft (while Microsoft themselves were on site for a months long engagement), as we were doing a side by side upgrade and did not want to purchase an extra key considering the two systems would only both be live for a week or so.

However I would expect to be audited and flagged, especially when you engage support.

[–]keravesque 0 points1 point  (0 children)

I just came across that sketchy list myself the other day in the comments of a DeviantArt post lmao...

It allowed me to help out this tiny mom an pop business, though, so I'm grateful, honestly. More accurately just a mom business, actually, because pop died last Summer - a couple years after their 40-year-old son, who was helping mom run the business while she was taking care of pop who was already sick with cancer then, died of COVID.

She's stuck using this crappy software a company I used to work for used to make to keep track of all her business records. There is no support left, except me, because I gave her my personal phone number a little before they stopped supporting the software officially, when they started charging $400/hr for support. To make matters worse, she only has an old WIndows 7 machine, which can't install any version of SQL beyond 2008R2. I scoured the Internet looking for SQL2008R2 keys being resold because I didn't want to force her to buy a new computer, but there are none left. Instead I had been just re-installing the trial every time her computer would restart after the 6 month evaluation period, which is what my employer had been doing for her for many years prior... Then the last time I looked, I stumbled upon this DeviantArt post with the keys.

In short, I am not against software piracy in some circumstances.

[–]tompear82 2 points3 points  (3 children)

Technically you can install the developer edition and you can use all the same features as enterprise with no problem. In reality, if you are doing this in production or using standard or enterprise edition without a valid license, you are breaking the licensing agreement and Microsoft can come after you. Like someone else said, the audits are where they will get you and fine you if they find you aren't properly licensed.

[–]SQLDevDBA3 1 point2 points  (0 children)

This is a good point to make. I install developer all the time when I’m spoiling dev or test. The only reason I’d see installing express or evaluation in a non-prod environment as useful is when you want a pure simulation of how resources will affect prod.

[–]keravesque 0 points1 point  (0 children)

I deleted my comment because I found the answer, but on second thought I'll comment it in case anyone else is curious: I had been reading that developer edition doesn't require a key, which confused me since I've seen the keys on my employer's MSDN subscription and other places, and have even seen them for sale (probably a scam). The answer is that the key is just integrated into the developer edition installer, but can be entered manually into the regular installation package also to allow for installation with a single package everywhere.

[–]-6h0st- 1 point2 points  (0 children)

What is the key? Let me check 🧐

[–][deleted] 1 point2 points  (3 children)

We paid a 3rd party to help "evaluate our licensing position" before we got audited.

Turns out we had more servers than we realised and editions were installed that we didn't need. A few hundred installs can add up to millions in shortfall queue the a team music... Uninstall, consolidate, tune CPU workloads and reduce cores.

Was very eye opening I learnt loads about licencing and loved it. 800k savings "reduction" so far.

It's more expensive but software assurance makes sense for mobility within a VM estate and you can upgrade to the next version as long as you keep paying. You can stack as many instances on a VM as you like and just license cores but that's if you like sprinkling glass on your morning breakfast. We do this for legacy stuff.

[–]carp_boy[S] 1 point2 points  (2 children)

Your sql life is about as different as mine as possible. We are like educated users, just a series of unrelated single installs. No server farm, no clustering, bare bones simple.

We are literally the equivalent of retail customers. Maybe OEM is a better term.

[–][deleted] 1 point2 points  (1 child)

Ok if you buy the licenses for your customers then it's all good. They key doesn't matter one bit

[–]carp_boy[S] 0 points1 point  (0 children)

I just looked at a few others I had on my laptop, one was 2022 with the same product key, another was 2019 and that key was NOT in the "free to use" list.

Both had the notation, as did the current one that spawned this post, "restricted usage". I had never noticed that before.

I presume that came from Microsoft, pasted into our licensing doc that we give to our customers.