01
Editions and the technical limits that matter
Express is free and capped at 10 GB per database, 4 cores and 1 GB of RAM for the engine — fine for embedded scenarios but rarely a production answer for anything user-facing. Standard fits most production workloads and is licensed either per core or in the legacy Server + CAL model; it tops out at 24 cores and 128 GB of buffer pool memory. Enterprise unlocks unlimited cores and RAM, in-memory OLTP at scale, Always On availability groups with up to eight secondaries, Transparent Data Encryption with customer-managed keys, Polybase for federated query, advanced compression, online operations and the new 2025 vector / AI features without throttles. Developer Edition is feature-equivalent to Enterprise but licensed strictly for non-production use — it is free to download and is the right answer for every development, test, CI/CD and pre-production environment.
02
Per-core licensing — physical, virtual and the 4-core minimum
On bare metal you license every physical core on the host, sold in 2-core packs, with a minimum of 4 cores per processor. Hyperthreading does not change the count: a 32-thread, 16-physical-core CPU still needs 16 core licences. For VMs, the rule is per-vCPU with a 4-core minimum per VM, regardless of host core count. The economical pattern for highly virtualised SQL fleets is to license every physical core on the host with Enterprise + Software Assurance and run unlimited SQL Server VMs on that host; for a one-off SQL VM, licensing only the vCPUs allocated to that VM is cheaper. Software Assurance is strongly recommended for any non-trivial deployment — it is mandatory for License Mobility (running the same licence on Azure or another cloud), for version upgrade rights, and for the failover-rights entitlement on passive secondaries.
03
Server + CAL — when the old model still wins
Standard can also be bought as a Server licence plus per-user or per-device CALs. This model is generally a win when the audience is small and well-defined (under roughly 25 named users), where per-core maths is unfavourable. Typical fits: an internal departmental database, a back-office line-of-business application with a known headcount, or a SQL Reporting Services instance whose audience is a small business intelligence team. Above 25 users, per-core almost always wins because CAL costs scale linearly with the audience while per-core does not.
04
High availability — Standard, Enterprise and contained AGs
Standard supports two-node basic Always On with a single secondary, intended for simple failover within a single rack or data centre. Enterprise supports up to eight secondaries with read-scale routing, multi-subnet failover, and asynchronous geo-secondaries. SQL Server 2022 introduced contained availability groups that ship system databases (master, msdb) along with the AG so that linked servers, jobs and logins follow failover cleanly; 2025 builds on that with smoother cluster-less topologies. For DR, the Managed Instance link feature replicates an on-prem SQL Server to a managed Azure instance with low RPO — useful for staged cloud migrations and warm-standby DR without standing up a second on-prem cluster.
05
Failover rights and passive secondaries
With active Software Assurance, you can run a passive secondary (used only for failover, not for read workloads, backups or any production traffic) without an additional SQL Server licence, including in Azure. The moment that secondary serves any traffic — including read-only reporting queries, log shipping consumption, transaction-log backup work, or routine DBCC CHECKDB runs — it becomes active and must be licensed. The most common audit finding here is read-intent routing accidentally enabled on a passive secondary; review the listener configuration before declaring a node passive.
06
Azure integration and the 2025 AI / vector story
SQL Server 2025 introduces native vector data types, the VECTOR_DISTANCE function with cosine, dot-product and Euclidean metrics, and T-SQL syntax for calling Azure OpenAI or local model endpoints directly from a stored procedure. This brings retrieval-augmented generation patterns inside the database without an external embedding service. JSON is now a binary on-disk type rather than a constrained NVARCHAR, with faster path queries and smaller storage. The Managed Instance link, Synapse Link for near-real-time analytics into a serverless SQL pool, and Microsoft Fabric mirroring all continue to evolve — these features assume an Azure subscription on the other end but they make the on-prem engine a much better citizen of a hybrid data estate.
07
Linux, containers and the developer experience
SQL Server 2025 continues to ship on Linux (Red Hat Enterprise Linux, Ubuntu, SUSE) with the same engine binary as the Windows build, and as an official container image for production use. The licensing is identical to the bare-metal install — license the host's cores. The container image is the supported path for CI/CD pipelines, ephemeral test environments and Kubernetes-based deployments via the SQL Server operator. For local development, SQL Server Developer Edition on Windows or Linux remains free and feature-complete; Azure SQL Edge has been deprecated in favour of running the full engine on smaller hardware.