SQL SERVER 的用户数,连接,连接池 license

SQL SERVER 理论上有32767个逻辑连接,SQL SERVER根据系统自行调配连接池。

首先 ,操作系统的用户数:即同时通过网络连接到这台电脑上面的用户限制,以5用户操作系统,搭建的文件服务器为例,去同时访问这个文件服务器的网络用户为5个。

下面说说SQL server,购买数据库有两种方式,1、根据用户数购买。2、根据cpu个数购买。

根据用户数购买,假如你购买了一个50用户的数据库,那么可以通过网络访问数据库的人数限制为50。

根据cpu个数购买的数据库访问人数不受限制,服务器上面有几颗cpu就要买几个授权的SQL server,但是如果你只买一个授权的话数据库也可以正常运行,但是微软认为你的数据库不合法。就如同盗版系统。

一个连接不等于一个用户,单独一个用户可以有超过一个的连接,单独一个连接可以有超过一个用户。

你可以运行里面输入perfmon,然后加入下面两个计数器进行对比
SQLServer: General Statistics — Logical Connections:与系统建立的逻辑连接数。SQLServer: General Statistics — User Connections:连接到系统的用户数。

打个比喻

sql server是你家的房子

用户数 是你家房子钥匙
连接数 是你家房子能进去的人

不是很恰当,但是基本能说明问题

一个房子有多少个钥匙是明确的,但是每个钥匙是可以让多个人进去
也就是说,sql server的用户是可以登陆sql server进行操作的,而连接数指的是使用某个用户名登陆的为了执行某个具体操作的一个连接。

通常一个SQL SERVER 查询器,一个ADOCONNECTION是一个连接。

在SQL Server里查看当前连接的在线用户数
use master
select loginame,count(0) from sysprocesses 
group by loginame
order by count(0) desc
select nt_username,count(0) from sysprocesses 
group by nt_username
order by count(0) desc
如果某个SQL Server用户名test连接比较多,查看它来自的主机名:
select hostname,count(0) from sysprocesses where loginame=‘test‘
group by hostname
order by count(0) desc
如果某个SQL Server用户名test连接比较多,查看它最后一次操作的时间范围分组:
select convert(varchar,last_batch,111),count(0) from sysprocesses where loginame=‘test‘
group by convert(varchar,last_batch,111)
order by count(0) desc
如果从主机(www)来的连接比较多,可以查看它的进程详细情况
select * from??sysprocesses where hostname=‘www‘
如果www机器主要提供网页服务,可能是asp程序处理连接时出了问题, 生成杀这些进程的SQL语句:
select ‘kill ‘+convert(varchar,spid) from sysprocesses where hostname=‘www‘
如果这样的问题频繁出现,可以写一个存储过程sp_KillIdleSpids.sql, 
写一个作业, 执行它, 来自动杀掉从主机(www)来但已经一天没有响应的用户连接.
?
?
?
--------------------------------
SQL Server的用户及权限? 
?sysadmin 可以在 SQL Server 中执行任何活动? 
serveradmin 可以设置服务器范围的配置选项 关闭服务器? 
setupadmin 可以管理链接服务器和启动过程? 
securityadmin 可以管理登录和 CREATE DATABASE 权限 还可以读取错误日志和更改密码? 
processadmin 可以管理在 SQL Server 中运行的进程? 
dbcreator 可以创建 更改和除去数据库? 
diskadmin 可以管理磁盘文件? 
bulkadmin 可以执行 BULK INSERT 语句? ......

最大连接数是指数据库能承受的最大并发访问数量

SQL Server的并发用户数或者license怎么理解? 华软论坛 2005-12-06 13:38:55 在 MS-SQL Server / 基础类 提问

盗版的有并发用户数的限制吗?正版好像有10用户,50用户的版本,如果用C/S架构的话,每个客户端连接算不算一个用户?

后来有段时间好像改到   只按CPU购买License了。现在又好像见到购买连接数的license.   
    
讲了这么一堆,想告诉你的是,如果你只有10用户的License,其实也是没有限制的。这是微软的市场人员亲口告诉我的。 [华 软 网]

欢迎转载,但请保留出处,本文章转自[华软网] 原文链接:http://www.huarw.com/db/dbbbs/MSSQLServer/200512/735120.html

你指的是购买许可吧?

SQL 提供3种购买方式
1) Processor license. (按CPU购买)
要求为运行SQL Server 2000的操作系统上的每个CPU购买许可. 这种方式不需要购买客户端访问许可.

2) Server plus device CALs. (服务器许可加每设备客户端访问许可)
运行SQL Server 2000的服务器需要一个许可, 每个访问SQL Server 2000的设备需要一个客户端访问许可.

3) Server plus user CALs. (服务器许可加每用户客户端访问许可)
运行SQL Server 2000的服务器需要一个许可, 每个访问SQL Server 2000的用户需要一个客户端访问许可

2、每客户 
每客户授权模式要求每个将访问 SQL Server 2000 服务器的设备都具有一个客户端访问许可证。对于客户端连接到不止一个服务器的网络,每客户模式通常更划算。 
在编辑框中,选择要授权的设备数。

选择授权模式: 
使用该对话框设置授权模式,以使客户端可以访问 Microsoft? SQL Server? 的该实例。SQL Server 2000 支持两种客户端访问授权模式,一个用于设备,另一个用于处理器。 
设备可以是工作站、终端或运行连接到 SQL Server 实例的 SQL Server 应用程序的任何其它设备。 
处理器指的是安装在运行 SQL Server 2000 实例的计算机上的中央处理器 (CPU)。一个计算机上可以安装多个处理器,从而需要多个处理器许可证。 
一旦设置了授权模式便无法再更改。可以在安装 SQL Server 之后添加设备或处理器许可证,这使用 "控制面板 "中的 SQL Server 2000 授权安装实用工具来进行。 
1、授权模式 
当从 "控制面板 "访问该对话框时,安装过程中选择的模式在默认情况下为选中,同时显示以前选择的设备数或处理器数。 
2、每客户 
每客户授权模式要求每个将访问 SQL Server 2000 服务器的设备都具有一个客户端访问许可证。对于客户端连接到不止一个服务器的网络,每客户模式通常更划算。 
在编辑框中,选择要授权的设备数。 
3、处理器许可证 
使用处理器许可,安装在运行 SQL Server 的计算机上的每个处理器都需要一个许可证。处理器许可证允许任意数目的设备访问服务器,无论它们是通过 Intranet 还是 Internet。 
使用处理器许可,SQL Server 2000 可以利用每个安装的处理器,并支持不限数目的客户端设备。通过 Internet 提供对 SQL Server 数据库的访问的客户或拥有大量用户的客户通常选择处理器许可证。 
在编辑框中选择要授权的处理器数。 
SQL Server安装成功后,重起计算机后SQL Server自动启动服务。

10用户不是指的连接用户

在创建自定义控制台时,可以给控制台指派两种常用访问选项中的一种:作者模式或用户模式。依次有三个级别的用户模式,因此共有四种默认访问控制台的选项:

作者模式 
用户模式-完全访问 
用户模式-受限访问,多窗口 
用户模式-受限访问,单窗口

你安装的是企业版,10个客户端是指你能够在别的机子上只能安装10个Sql客户端同它连接

SQL SERVER 的用户数,连接,连接池 license

时间: 2024-10-06 07:45:50

SQL SERVER 的用户数,连接,连接池 license的相关文章

解决SQL Server管理器无法连接远程数据库Error: 1326错误

解决SQL Server管理器无法连接远程数据库Error: 1326错误 我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例的问题,错误描述信息摘录如下: An error has occurred while establishing a connection to the server. (provider: Named Pipes Provider, error: 40 – Could not open a con

SQL Server中多表连接时驱动顺序对性能的影响

原文:SQL Server中多表连接时驱动顺序对性能的影响 本文出处:http://www.cnblogs.com/wy123/p/7106861.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错误进行修正或补充,无他) 最近在SQL Server中多次遇到开发人员提交过来的有性能问题的SQL,其表面的原因是表之间去的驱动顺序造成的性能问题,具体表现在(已排除其他因素影响的情况下),存储过程偶发性的执行时间超出预期,甚至在调试的时候

JDBC与SQL SERVER各个版本的连接方法

转至:blog.csdn.net/ying5420/article/details/4488246 1.SQL SERVER 2000 JDBC驱动程序:msbase.jar.mssqlserver.jar.msutil.jar.这三个文件都可以从微软的官方网站上下载,是Java开发中连接SQL SERVER 2000必不可少的文件. driver:com.microsoft.jdbc .sqlserver .SQLServerDriver url:jdbc :microsoft :sqlser

SQL Server 2005无法远程连接的解决方法 (转帖)

方法如下:  一.为 SQL Server 2005 启用远程连接1. 单击"开始",依次选择"程序"."Microsoft SQL Server 2005"."配置工具",然后单击"SQL Server 外围应用配置器". 2. 在"SQL Server 外围应用配置器"页上,单击"服务和连接的外围应用配置器". 3. 在"服务和连接的外围应用配置器&qu

利用Ring Buffer在SQL Server 2008中进行连接故障排除

原文:利用Ring Buffer在SQL Server 2008中进行连接故障排除 出自:http://blogs.msdn.com/b/apgcdsd/archive/2011/11/21/ring-buffer-sql-server-2008.aspx SQL Server 2008中包含一个新功能,旨在帮助解决特别棘手的连接问题.这个新功能是Connectivity Ring Buffer,它可以捕捉每一个由服务器发起的连接关闭记录(server-initiated connection

SQL Server 2005无法远程连接的解决方法

以前一直连接本地的数据库,连接SQL Server 2005是小菜的... 做项目也是老师搭好了服务器端,打上IP去访问就行...也不用考虑太多. 今天自己在公司搭SQL Server 2005服务器,客户端去访问问题就来了... 连接失败,SQL Server 2005不支持远程... 想想应该不会,于是想到老师以前说的,服务器端要做配置...哇哈哈!~~果然... 方法如下:  一.为 SQL Server 2005 启用远程连接 1. 单击"开始",依次选择"程序&qu

SQL Server里查看当前连接的在线用户数

use master select loginame,count(0) from sysprocesses group by loginame order by count(0) desc select nt_username,count(0) from sysprocesses group by nt_username order by count(0) desc 如果某个SQL Server用户名test连接比较多,查看它来自的主机名: select hostname,count(0) fr

SQL Server三种表连接原理

http://msdn.microsoft.com/zh-cn/library/dn144699.aspx 简介 在SQL Server中,我们所常见的表与表之间的Inner Join,Outer Join都会被执行引擎根据所选的列,数据上是否有索引,所选数据的选择性转化为Loop Join,Merge Join,Hash Join这三种物理连接中的一种.理解这三种物理连接是理解在表连接时解决性能问题的基础,下面我来对这三种连接的原理,适用场景进行描述. 嵌套循环连接(Nested Loop J

全面解析SQL SERVER 的左右内连接

SQL SERVER数据库的三种常用连接解析: 这里先给出一个官方的解释: left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录 inner join(等值连接) 只返回两个表中联结字段相等的行 USE [BI] GO DROP TABLE BI.dbo.TABLE_ONE; GO DROP TABLE BI.dbo.TABLE_TWO; GO CREATE TABLE BI.dbo.