A SQL Server license is a legal agreement that permits the use of Microsoft's relational database management system (RDBMS). Licenses are sold per core or per server, with prices varying by edition and deployment method.
Microsoft offers two primary licensing models: Core-based and Server + CAL (Client Access License). Core-based licensing charges per physical core, while Server + CAL requires a base server license plus a CAL for each device or user accessing the server.
Licenses are sold in packs of two cores, with a minimum of four cores required for most editions. For example, a server with eight cores would require four licenses (two-core packs).
| Edition | Typical Use Case | Licensing Model |
|---|---|---|
| Enterprise | Large-scale, mission-critical applications | Core-based |
| Standard | Departmental or small business applications | Core-based or Server + CAL |
| Developer | Development and testing | Free (non-production use only) |
| Express | Learning, small applications | Free (limited features) |
The Enterprise edition includes advanced features like high availability and disaster recovery, while the Standard edition supports basic database functionality. The Developer edition is free but cannot be used in production environments.
Another common mistake is assuming that virtualization doesn't affect licensing. Microsoft's licensing rules for virtual machines can be complex, often requiring additional licenses for each virtual core.
When setting up a SQL Server for a client, I initially underestimated the cost of licensing for a highly virtualized environment. After consulting Microsoft's licensing documentation, I realized we needed to purchase additional licenses to cover all virtual cores, increasing the project's budget.