关于SQL Server的授权模式
[TOC]
SQL Server不同的版本有不同的功能,不仅价格颇有差异,获得许可的方式也不尽相同。SQL Server有两种基本的授权(License)模式。
每处理器 或 每核 模式
版本 | 计费模式 | 解释 |
---|---|---|
SQL Server 2008 R2及以前 | 每处理器(CPU)模式 | 只计算物理CPU的数量 |
SQL Server 2012及以后 | 每核(Per Core)模式 | 每2核(超线程之前的Core)为一个计费单位 同时计算物理CPU(插槽)的数量 每个插槽最低购买4核 |
每处理器(Per Processor)授权模式只计算物理处理器的数量,与物理处理器的内核数量无关。这种授权模式一直沿用到SQL Server 2008 R2。
SQL Server 2012开始,授权模式进行了调整。按每核(Per Core)计数,同时还需要计算物理处理器(插槽)的数量,单个插槽最低需要购买4核。
这一授权模式可以很好的简化授权的复杂程度,不用统计有多少用户或者设备会访问SQL Server,这种授权模式适用于以下场景:
- 不能或不想计算用户/设备数量;
- 用户/设备数量足够多,“每核”方式比“服务器+CAL许可”的方式更有成本效益;
- SQL Server用于对外的Web站点或应用程序,用户数量无法统计;
计算示例
- 某台服务器有4颗CPU、每颗CPU有10核,启用了“超线程”,共有40核Core(s)、80个逻辑处理器Logical Processor(s)。这台服务器在2010年时购买SQL Server 2008 R2时购买了4个“每处理器”授权,这样的授权覆盖了这台服务器所有的CPU;
- 硬件配置同上例,在2012年购买SQL Server 2012时需要购买40个“每核”授权;
- 某台服务器有2颗CPU、每颗CPU只有2核。“每核”授权时,为了覆盖全部的CPU,需要购买8个“每核”授权。因为每个CPU插槽最低需要购买4核;
- 某台服务器有2颗CPU、每颗CPU有6核。“每核”授权时,为了覆盖全部的CPU,需要购买12个“每核”授权;
Server+CAL 模式
CAL即客户端访问许可(Client Access License),分为设备访问许可(Device CAL)和用户访问许可(User CAL)两类。SQL Server及其组件(例如报表服务)提供服务,客户端则是访问这些服务的设备或用户。
购买CAL时需要考虑有多少客户端需要访问SQL Server并从中获取数据,客户端的计算方式与中间层无关,只与最终有多少客户端能够获取(包括浏览、修改、删除数据等)SQL Server服务器中的数据有关。
在计算客户端时,需要特别注意以下场景:
- 前端多路复用(即用户通过前端应用服务器去连接后端SQL Server数据库)或池化方式不会减少所需要的CAL数量。例如,企业中的客户端不直接访问SQL Server而是集中通过一台Web服务器间接访问,这时候仍应该为每个客户端单独购买CAL。
- 员工和员工之间手工传输数据,对于接收方的员工不需要CAL。例如,一个员工访问SQL Server并生成Excel版本的报表,然后发送给另一个员工,那么接收Excel版本报表的员工不需要CAL(只要该Excel报表不再去访问SQL Server服务)。
选用“Server+CAL”模式的用户,需要在服务器端采购SQL Server服务器许可,并为客户端购买CAL。每个客户端只需要一份CAL就可以访问本企业中数量不限的SQL Server数据库。在服务器 + CAL 许可模式下访问服务器的每个用户或设备都需要客户端访问许可证 (CAL)。
这种授权模式适用于以下场景:
- 可以计算出用户、设备数量。
- 用户/设备数量足够少,使用该授权模式的成本低于“每处理器”或“每核”模式。
- 用户需要访问多个SQL Server数据库。
以SQL Server 2017为例,不同版本对应的许可模式及价格如下:
SQL Server 2017版本 | 许可模式 | 解释 | 开放的无级别价格 |
---|---|---|---|
Enterprise版 | 每内核模式 | 每2核(超线程之前)为一个计费单位 同时计算物理CPU数量,每个物理CPU最低购买4核 |
14,256美元 |
Standard版 - 每内核 | 每内核模式 | 3,717 美元 | |
Standard版 - 服务器 + CAL | 服务器 + CAL | 931 美元 | |
Developer版 | 每用户 | 免费 | |
Web版 | 不适用 | 不适用 | |
Express版 | 不适用 | 免费 |
注意:以上报价更新于 2021-12-16,更多信息请访问 SQL Server 定价
授权模式的确认与升级
如何确认
通过 SELECT @@VERSION
来确认授权方式,比如:
- Server \ CAL 模式
Microsoft SQL Server 2014 (SP2) (KB3171021) - 12.0.5000.0 (X64) Jun 17 2016 19:14:09
Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.3
- Core-based 模式
Microsoft SQL Server 2014 (SP2) (KB3171021) - 12.0.5000.0 (X64) Jun 17 2016 19:14:09
Copyright (c) Microsoft Corporation Enterprise Edition: Core-based Licensing (64-bit) on Windows NT 6.3
如何升级
通过 SQL Server 安装中心 - 维护 - 版本升级,输入新的 License 完成升级。