"you have two choices: purchase per core licenses at $1,793 or purchase a server license at $898 and client access licenses at $209 per client."
So, if everyone is going through the web app and the web app is not using Windows Auth (you certainly don't sound like you need to use that) - You should be able to get SQL Server for ~ $1107.
The minimum cores you can license on MSSQL, whether on bare metal, or a VM, is 4. Wherever you run it, you must license all cores available to the OS. Had I chosen to run on bare metal, I would be forced to license 12 cores (6-core Xeon CPU x 2). This app requires SQL Server 2008 R2, so the 4GB limit applies. But I can't buy 2008 R2 anymore directly. I have to license 2012, and use my downgrade rights.
You are wrong on the Windows Authentication requirement. This has nothing to do with anything.
For MSSQL, you must license the database per core if you are using it in a public web application, because you have an arbitrary number of users. And you must license all cores in the machine. The VM is the only way to license only some cores, namely, as many cores as are in your VM.
If you are using MSSQL in a private web application, you may choose CALs. However, if you do so, it doesn't matter how users authenticate. Each user or device needs a license. Microsoft is very clear about this. User count is just that: the number of users using the database, either directly, or through a web application which does everything through a single set of credentials. It's not system accounts. It's users or devices.
The same applies for Windows Server licenses. It doesn't matter how the user authenticates. If they are using a web-app hosted on a Windows Server, and that web-app is not publicly accessible (a login page does not count), then you need a CAL for each user or device.
You said "...because it's not a public website, but a private web app."
So, you do not have to license it per core. You can buy the $898 standard version and a few CALs - one for your web app and the rest for db admins.
Furthermore - even if there is some wording that says "if 100 people are hitting your private web app, you have to buy 100 CALS" - just ignore it like everybody else does.
So, your argument amounts to this: Ignore Microsoft's licensing requirements, be a pirate, and just lie through your teeth.
No, this is not what "everybody else" does, especially those who must answer to shareholders, compliance personnel, and a management team that actually cares about staying within the bounds of the law, and not paying thousands of dollars in civil penalties should we be found in violation of a licensing agreement.
This is why we develop everything we can on an open source application stack. But we can't write everything from scratch. We aren't going to spend $100K+ developing an entire enterprise shipping system from scratch. That means we must purchase proprietary solutions that will cost us much less and have a greater ROI. That also means licensing compliance.
I only said one third of that. I also said that I don't think you're as restricted with intranet web apps as you are with public web apps, but I could be wrong...
Anyway - you can lie if you want to and I certainly won't judge you - but I didn't say you should lie or be a pirate. I said ignore the license. Big difference. (From your original post, it sounded to me like you probably don't have shareholders. Do you?)
Are you aware that vast numbers of small, medium and even larger size businesses are running SQL Server without the proper licenses? Are you also aware that Microsoft knowingly allows this to happen with a wink and a nod? Just like Windows and Office...until XP/2003 when they turned to activation. They didn't do that for SQL Server or many of their other products as far as I can remember. Could happen, but we'll see...
So yeah, advising you to do what millions of other business do too - I have no problem with that. (I also have no problem bribing the locals if that's the normal course of business. Don't think of me as immoral - I'm a realist. Big businesses squeeze everybody in one way or another, so if you can get away with it - it's great advice. The risk goes up the larger your company gets, obviously...)
Also, SQL Server 2012 is 100% backwards compatible with 2008 R2. So Express 2012 would definitely work (Microsoft is legendary for their backwards compatibility. Just sayin'.)
What kind of business are you running 200 Macs for anyway?
I'm aware people lie all the time. I'm aware that sometimes they get caught. I'm aware that when you owe millions of dollars to a bank, the auditors actually check this stuff.
"I didn't say you should lie or be a pirate. I said ignore the license."
And with that you lose the argument, and all credibility.
Enjoy the lame Mac-based "business" infrastructure that you built. Maybe if you'd gone with Windows to begin with, like every other business on the planet - you'd have saved enough money so you wouldn't be complaining about Microsoft's server licensing costs right now.
I bow to your manifestly superior entrepreneurial prowess. Obviously, I am too stupid to know how lame Macs are. That explains why my company has maintained a paltry year-to-year growth rate of not less than 50% for the last 15 years.
Oh, and for the record: "Am I bovvered? Look at my face. Am I bovvered though?"
Please, excuse me if I don't believe you in the slightest. I'm sure though, if you tried really hard, you could even attribute your imaginary profits to your use of Macs. I'd love to see some of your hipster logic in detail.
Anyway so, say you're making good money and the only product that can apparently fill your needs properly requires SQL Server....and yet you're still complaining? With all that money you have? One would think you'd be happy to even have found a product that does exactly what your business needs.
Did you wonder though why there are no products for you that run on OS X? (It's a real mind-boggler for you, I'm sure.)
I'm still laughing at the fact that you've (allegedly) spent well over $100K on overpriced Apple hardware and yet you have the audacity to complain about spending a fraction of that on some software that you actually need. Really...thanks for the entertainment :)
Your a funny guy. You ready to call me Hitler, yet?
I never said our infrastructure was Mac-based. Our user machines are Macs. Our infrastructure is almost entirely Linux/Java/Postgres. We are in the printing and graphics arts business. Hey, imagine that, a Mac-dominated field - but Macs are so lame that no one could possibly have a good reason for using them, right?
There's a reason we don't use Mac servers (aside from a file server). They suck. Apple has sucked at servers ever since they abandoned the enterprise when they cancelled XServe (which we never used), and re-focused their server product for small business and home use.
We also run Windows terminal servers, press controllers and RIPs, legacy shipping systems, etc. Our CAD team uses Windows. I've been in this industry for 20 years, and have worked with pretty much everything out there in common use.
As for attributing our quite real profits to the use of Macs - don't be a moron. Our profits are the result of a world-class management team with whom I am privileged to work.
You are excellent at stereotyping, and obviously have a vendetta against Apple, and by extension, anyone using Apple products. I'm sorry for you. We are not mind-numbed robots. We have reasons for the business decisions that we make. And we, despite your consternation, have been just as successful as I have asserted.
I certainly don't need to know you or even have a "vendetta" against Apple to have a good laugh at someone complaining about SQL Server pricing when they've happily paid Apple for the privilege of running OS X.
I'm going to let you have just one more "last word" here though because that seems to be important to you. Good night, my fellow comedian :)
Well, that's your assessment of it. Plenty of small and medium sized businesses have been doing it without any problems for over a decade. Same thing with MSDN subscriptions - you're supposed to buy one sub per developer and many places simply buy one and then proceed to install Visual Studio on 20 computers.
Also, you should only need CALs if your private web app is using Windows Authentication to make each database request on a per-user basis.
From http://www.mssqltips.com/sqlservertip/2942/understanding-the...
"you have two choices: purchase per core licenses at $1,793 or purchase a server license at $898 and client access licenses at $209 per client."
So, if everyone is going through the web app and the web app is not using Windows Auth (you certainly don't sound like you need to use that) - You should be able to get SQL Server for ~ $1107.