The only people using MSSQL Server are people deep, deep in the Microsoft ecosystem. Think government work, and those unlucky enough to work at a pure Microsoft shop where every problem looks like a Microsoft or Azure solution.
It's not a dominant database anywhere on the outside.
We're a B2B shop migrating to MSSQL, from SQL Anywhere. Managed MSSQL in Azure is fairly easy operationally, especially since we don't have a dedicated DBA and our support staff aren't SQL gurus.
However since we now got the tools for running on both, and experience migrating, we might be moving to PostgreSQL at some point in not too distant future. Managed MSSQL in Azure is not cheap.
I think this is more your bias, it's also regional as different places in the world seem to use these things way more than other parts. Really quick search shows it's used a LOT outside of the areas you mentioned. The place it's not really used? startups... it's the #3 DB in the world.
Sure, it's #3 but whole point is new installs have mostly stalled and outside companies absolutely mainlining the .Net Framework Kool-Aid, no one is building greenfield on it. I've worked for several .Net Core companies, all of them have either converted or in process of converting away from MSSQL to MySQL flavor or PostGres.
Microsoft is heavily investing in Postgres in fact which is why they bought PostGres sharding company, Citus and looking at commit history on PostGres, they have several employees actively working on it. They also contributed DocumentDB which is Mongo over Postgres.
It will take a long time to die and Microsoft will still continue to do little work on the product and stack your money in their vault while giggling.
This is like saying nobody eats at McDonald’s because they have more competition now. It’s not wrong from a certain perspective but that’s still a huge number of customers.
Sure and likely Windows Server and MSSQL will still exist in 2056 because there will be enough money in it. Hell, AS/400 is still kicking but I'm not sure anyone would consider that anything but legacy.
It's "legacy" because it's essentially tied to Windows. Yes, technically it works on Linux, and no doubt that was an amazing feat, but no serious company is running MSSQL on Linux when all the documentation, all the best practices are all based on running that on Windows.
First reason is MS SQL team read the writing on the wall and realized if they wanted a chance to stay relevant, they needed to support Linux. I'm not sure that play really worked for them but it also gave benefits for number 2.
Second, they had to eat their own dogfood operationally with Azure and hated the taste of dealing with Windows. Linux offered lower RAM/CPU footprint along with much more ease of use with Kubernetes/Containers. Yes, Windows containers exists but as someone who has had to use them, it's rough experience.
Wait until you read about the version they released for ARM, briefly! It had a dynamic recompiler which would produced ARM64 ELF libraries from Windows PE executables, allowing x86_64 MSSQL to run on ARM Linux! They ditched that once Rosetta support on ARM Macs was good enough to run x86_64 VMs, as apparently all they cared about was supporting Docker on Macs...
I think it is essentially "complete drawbridge", too. I haven't played around with it in a while, but from memory, you can coerce it to run arbitrary Windows executables, basically anything without graphics (which are missing from the PAL they ship).
It's quite impressive, though also necessary if you think about it. SQL Server requires the legacy dot net stack, AND it also ships with a full copy of the msvc compiler/linker! Not sure if that's ever used by the Linux port, but it is installed. MSSQL kind of exercises every inch of the Windows API surface.
You can even run e.g. xp_dirtree and see an overlay of the host disk along with Drawbridge's copy of Windows.
For mid sized businesses, where you're mostly just doing some business reporting, a single mssql instance makes for a great and very cheap 'data warehouse'. All the auth magically works for people to connect with Excel, and powerbi+cloud just works out of the box.
I'd be curious what a better/non-legacy solution is! (as I do this stuff haha, and don't see much else other than full cloud options, sf etc)
Even Microsoft considers Microsoft SQL Server legacy! It's had virtually no new features added between 2022 and 2025 other than AI and cloud integration. All the truly capable people have long since left that team and moved into various Azure and Fabric teams.
To give you an idea of how bad things have gotten, there's like one guy working on developer tooling for SQL Server and he's "too busy" to implement SDK-style SQL Server Data Projects for Visual Studio. He's distracted by, you guessed it, support for Fabric's dialect of SQL for which the only tooling is Visual Studio Code (not VS 2026).
There's people screaming at Microsoft that they have VS solutions with hundreds of .NET 10 and SQL projects, and now they can't open it their flagship IDE product because the SQL team office at Redmond has cloth draped over the furnite and the lights are all off except over one cubicle.
Also: There still isn't support for Microsoft Azure v6 or v7 virtual machines in Microsoft SQL Server because they just don't have the staff to keep up with the low-level code changes required to support SSD over NVMe with 8 KB atomicity. Think about how insanely understaffed they must be if they're unable to implement 8 KB cluster support in a database engine that uses 8 KB pages!!!
They also still don't have ASP.NET Core support for SQL Server Reporting Services - you're stuck in ASP.NET Web Forms land if you want to embed reports in your app.
The only people using MSSQL Server are people deep, deep in the Microsoft ecosystem. Think government work, and those unlucky enough to work at a pure Microsoft shop where every problem looks like a Microsoft or Azure solution.
It's not a dominant database anywhere on the outside.
We're a B2B shop migrating to MSSQL, from SQL Anywhere. Managed MSSQL in Azure is fairly easy operationally, especially since we don't have a dedicated DBA and our support staff aren't SQL gurus.
However since we now got the tools for running on both, and experience migrating, we might be moving to PostgreSQL at some point in not too distant future. Managed MSSQL in Azure is not cheap.
If you started on SQL Anywhere, SAP, you were pretty deep in Enterprise sauce so MSSQL make sense.
And "Holy crap, this is not cheap" is why I see plenty of companies transitioning off MSSQL.
1 reply →
I think this is more your bias, it's also regional as different places in the world seem to use these things way more than other parts. Really quick search shows it's used a LOT outside of the areas you mentioned. The place it's not really used? startups... it's the #3 DB in the world.
Sure, it's #3 but whole point is new installs have mostly stalled and outside companies absolutely mainlining the .Net Framework Kool-Aid, no one is building greenfield on it. I've worked for several .Net Core companies, all of them have either converted or in process of converting away from MSSQL to MySQL flavor or PostGres.
Microsoft is heavily investing in Postgres in fact which is why they bought PostGres sharding company, Citus and looking at commit history on PostGres, they have several employees actively working on it. They also contributed DocumentDB which is Mongo over Postgres.
It will take a long time to die and Microsoft will still continue to do little work on the product and stack your money in their vault while giggling.
We are on the outside, for the types of customers we serve it is MS SQL, Oracle, DB2, or some SaaS product that you can only access via GraphQL.
Very seldom I use something like Postegres, last time was in 2018.
I've worked for plenty of companies using MsSql.
They have all been dotnet ecosystem, but self hosted rather than Azure
I think the latest versions of SQL Server also run on Linux now.
and it doesn't support NTLM auth afaik! Which is an extra bonus, as I don't remember there being a way to disable it in the windows version
Heh. State government is the only place I've encounter MSSQL in the past 10 years.
It's common as the backend to a lot of SMB scale ERP and CRM solutions. But almost all of those run on SQL Express.
7 replies →
This is like saying nobody eats at McDonald’s because they have more competition now. It’s not wrong from a certain perspective but that’s still a huge number of customers.
Sure and likely Windows Server and MSSQL will still exist in 2056 because there will be enough money in it. Hell, AS/400 is still kicking but I'm not sure anyone would consider that anything but legacy.
It's "legacy" because it's essentially tied to Windows. Yes, technically it works on Linux, and no doubt that was an amazing feat, but no serious company is running MSSQL on Linux when all the documentation, all the best practices are all based on running that on Windows.
Why did they port it to Linux?
Knowing nothing about this, I wonder if they're getting ready to retire Windows Server, and wanted to get their server products off it?
Edit: How they did it is also quite fascinating:
https://www.microsoft.com/en-us/sql-server/blog/2016/12/16/s...
https://www.microsoft.com/en-us/research/project/drawbridge/
>a key contribution of Drawbridge is a version of Windows that has been enlightened to run within a single Drawbridge picoprocess.
MSSQL on Linux only seems to use parts of that project (a smaller abstraction layer), but that's still super cool.
Two big reasons I realize,
First reason is MS SQL team read the writing on the wall and realized if they wanted a chance to stay relevant, they needed to support Linux. I'm not sure that play really worked for them but it also gave benefits for number 2.
Second, they had to eat their own dogfood operationally with Azure and hated the taste of dealing with Windows. Linux offered lower RAM/CPU footprint along with much more ease of use with Kubernetes/Containers. Yes, Windows containers exists but as someone who has had to use them, it's rough experience.
The main reason was to be able to deploy SQL Server in Linux based containers.
Windows Server is doing alright.
Wait until you read about the version they released for ARM, briefly! It had a dynamic recompiler which would produced ARM64 ELF libraries from Windows PE executables, allowing x86_64 MSSQL to run on ARM Linux! They ditched that once Rosetta support on ARM Macs was good enough to run x86_64 VMs, as apparently all they cared about was supporting Docker on Macs...
I think it is essentially "complete drawbridge", too. I haven't played around with it in a while, but from memory, you can coerce it to run arbitrary Windows executables, basically anything without graphics (which are missing from the PAL they ship).
It's quite impressive, though also necessary if you think about it. SQL Server requires the legacy dot net stack, AND it also ships with a full copy of the msvc compiler/linker! Not sure if that's ever used by the Linux port, but it is installed. MSSQL kind of exercises every inch of the Windows API surface.
You can even run e.g. xp_dirtree and see an overlay of the host disk along with Drawbridge's copy of Windows.
1 reply →
Isn't that basically a heavier version of a unikernel?
The "why" is for Kubernetes and Docker support.
For example, the Aspire.NET orchestrator pulls the Linux docker image of SQL Server in much the same way as it does for MySQL or Postgres.
On the flip side, every single MSSQL instance that I've encountered has been legacy. For at least five years.
For mid sized businesses, where you're mostly just doing some business reporting, a single mssql instance makes for a great and very cheap 'data warehouse'. All the auth magically works for people to connect with Excel, and powerbi+cloud just works out of the box.
I'd be curious what a better/non-legacy solution is! (as I do this stuff haha, and don't see much else other than full cloud options, sf etc)
These days I think airtable and other "no code" systems fit this bill well.
1 reply →
Even Microsoft considers Microsoft SQL Server legacy! It's had virtually no new features added between 2022 and 2025 other than AI and cloud integration. All the truly capable people have long since left that team and moved into various Azure and Fabric teams.
To give you an idea of how bad things have gotten, there's like one guy working on developer tooling for SQL Server and he's "too busy" to implement SDK-style SQL Server Data Projects for Visual Studio. He's distracted by, you guessed it, support for Fabric's dialect of SQL for which the only tooling is Visual Studio Code (not VS 2026).
There's people screaming at Microsoft that they have VS solutions with hundreds of .NET 10 and SQL projects, and now they can't open it their flagship IDE product because the SQL team office at Redmond has cloth draped over the furnite and the lights are all off except over one cubicle.
Also: There still isn't support for Microsoft Azure v6 or v7 virtual machines in Microsoft SQL Server because they just don't have the staff to keep up with the low-level code changes required to support SSD over NVMe with 8 KB atomicity. Think about how insanely understaffed they must be if they're unable to implement 8 KB cluster support in a database engine that uses 8 KB pages!!!
They also still don't have ASP.NET Core support for SQL Server Reporting Services - you're stuck in ASP.NET Web Forms land if you want to embed reports in your app.
> like one guy working on developer tooling for SQL Server
As somebody who's been procrastinating on getting my main project off of SSDT,
We can all tell.