In addition to feature sets, one of the determining factors in choosing a SQL Server version is cost. With SQL Server 2000, Microsoft has changed the licensing model to include a processor-based licensing model intended for Web-based environments in which the number of clients or user connections is indeterminate.
Processor licensing requires a single license for each central CPU in the machine running a Microsoft Server product. This type of license includes unlimited client device access. Additional server licenses, seat licenses, and Internet connector licenses are not required. You must purchase a processor license for each installed processor on the server on which SQL Server 2000 will be installed even if some processors will not be used for running SQL Server. The only exception is for systems with 16 or more processors that allow partitioning the processors into groups so the SQL Server software can be delegated to a subset of the processors.
For those who prefer the more familiar Server/Per-Seat Client Access License (CAL), or for those environments in which the number of client devices connecting to SQL Server is known, server or CAL-based licensing models are still available. This licensing model requires purchasing a license for the computer running SQL Server 2000, as well as a license for each client device that accesses any SQL Server 2000 installation. A fixed number of CALs are included with a server license and the server software. Additional CALs can be purchased as needed.
Server/Per Seat CAL licensing is ideal for those environments in which the number of clients per server is relatively low, and access from outside the firewall is not required. Be aware that using a middle tier or transaction server that pools or multiplexes database connections does not reduce the number of CALs required. A CAL is still required for each distinct client workstation that connects through the middle tier . (Processor licensing might be preferable in these environments due to its simplicity and affordability when the number of clients is unknown and potentially large.)
Table 2.5. SQL Server 2000 Estimated Retail Pricing
The Enterprise Edition license allows you to run multiple instances on the same machine without additional licenses. The Standard Edition requires a separate license for each instance.
The Developer Edition of SQL Server 2000 is available for a fixed price of $499 per developer.
Personal Edition Licensing
The Personal Edition is considered a client component of SQL Server 2000 and cannot be purchased separately. It is included with the Standard and Enterprise Editions of SQL Server 2000, and licensing is covered under the rules applied to Enterprise and Standard Editions. Check the End User License Agreement (EULA) Addendum for these products to learn more.
Desktop Edition Licensing
The Desktop Engine Edition of SQL Server 2000 is available with all the Enterprise, Standard, and Developer Editions of SQL Server 2000, as well as other Microsoft products, such as MDSN Universal subscription and Office Developer Edition 10. Check the EULA for these products for information on redistribution rights for the Desktop Engine. The Desktop Edition does not require a CAL when it is used on a standalone basis, or when it connects to a SQL Server instance that is licensed using the per-processor model.
Windows CE Edition Licensing
SQL Server Windows CE Edition is licensed through the Developer Edition. The Developer license allows unlimited deployment of SQL Server 2000 Windows CE Editions as long as these devices operate in standalone mode. If the device connects to a SQL Server instance that is not on the device, a separate CAL is required unless the SQL Server instance is licensed under the Per Processor model.
Choosing a Licensing Model
Which licensing model should you choose? Per Processor licensing is generally recommended for instances in which the server will be accessed from the outside. This includes servers used in Internet situations, or servers that will be accessed from both inside and outside an organization's firewall. Per Processor licensing might also be appropriate and more cost-effective for internal environments in which client-to-server processor ratios are high. An additional advantage to the Per Processor model is it eliminates the need to count the number of devices connecting to SQL Server, which can be difficult to manage on an ongoing basis.
Using the Server/Per Seat CAL model is usually the more cost-effective choice in internal environments in which client-to-server ratios are low. Table 2.6 lists the number of seats required relative to the number of server processors, where Processor licensing becomes less expensive than Server/Per Seat CAL licensing. If you will have more seats than those listed, you should consider going with Processor licensing.
Table 2.6. Number of Seat Thresholds in Which Processor Licensing Becomes Less Expensive Than Server/CAL Licensing
Mixing Licensing Models
You can mix both Per Processor and Server/CAL licensing models in your organization. If the Internet servers for your organization are segregated from the servers used to support internal application, you can choose to use Processor licensing for the Internet servers and Server/CAL licensing for internal SQL Server instances and user devices. Keep in mind that you do not need to purchase CALs to allow internal users to access a server already licensed via a Processor license ”the Processor licenses allow access to that server for all users.
Failover Cluster Licensing
If you are using SQL Server 2000 Enterprise Edition in a failover cluster configuration, two or more SQL Servers are clustered together to pick up each other's processing if one computer fails. Special licensing considerations exist for this type of configuration, depending on your cluster configuration. (For more information on SQL Server clustering, see Chapter 24, "SQL Server Clustering.")
If you are using an active/active cluster configuration, all servers in the failover cluster regularly process information independently unless a server fails, at which point, one server or more takes on the additional workload of the failed server. In this environment, all servers must be fully licensed using either Per Processor licensing or Server/CAL licensing.
If your cluster is an active/passive configuration in which at least one server in the cluster does not regularly process information, but simply waits to pick up the workload when an active server fails, no additional licenses are required for the passive server. The exception is if the failover cluster is licensed using the Per Processor licensing model, and the number of processors on the passive server exceeds the number of processors on the active server. In this case, additional processor licenses must be acquired for the number of additional processors on the passive computer.