服务与服务器是两个不同的概念,服务器是提供服务的计算机,配置服务器主要是对内存、处理器、安全性等几个方面配置。由于SQL Server 2005服务器的设置参数比较多,这里选一些比较常用的介绍。
配置SQL Server 2005服务器的办法:启动【SQL Server Management Studio】,在【对象资源管理器】窗口里,右击要配置的服务器(实例)名,在弹出的快捷菜单里选【属性】选项。下面介绍各选项卡里的内容。
1 常规
图4.41所示的是服务器属性的【常规】选项卡,此处功能是查看服务器的属性,例如服务器名、操作系统、CPU数等等。此处各项只能查看,不能修改。选项卡里有以下项目:
l 名称:显示服务器(实例)的名称。
l 产品:显示当前运行的SQL Server的版本。
l 操作系统:显示当前运行的操作系统及版本号。
l 平台:显示运行SQL Server的操作系统和硬件。
l 版本:显示当前运行的SQL Server版本号
l 语言:显示当前的SQL Server实例所使用的语言。
l 内存:显示当前服务器上安装的内存大小。
l 处理器:显示当前服务器上安装的CPU数量。
l 根目录:显示当前SQL Server实例所在的目录。
l 服务器排序规则:显示当前服务服务器采用的排序规则。
l 已群集化:显示是否安装了SQL Server 2005服务器群集。
图4.41 【常规】选项卡
2 内存
图4.42所示的是服务器属性的【内存】选项卡,选项卡里有以下项目:
l 使用AWE分配内存:32位的操作系统最多只能支持到4GB的内存,然而大型的SQL Server 2005服务器的物理内存可以扩展到64GB。如果要使用大于4GB的内存,就要用到Windows 2000和Windows Server 2003地址对话框化扩展插件(AWE)API来识别和分配了。这个选项是指定SQL Server利用AWE来支持超过4GB以上的物理内存。
说明:如果数据库服务器的内存没有超过4GB,就不用选择此项。
l 最小服务器内存:该项是指定分配给SQL Server的最小内存,低于这个值的内存是不会被释放的。
技巧:要根据当前实例的大小和活动设置此值,以确保操作系统不会从SQL Server请求过多的内存,以免影响SQL Server的性能。
l 最大服务器内存:该项是指定分配给SQL Server的最大内存。
说明:除非知道有多少个应用程序与SQL Server同时运行,并且知道这些应用程序要使用多少内存,那么就可以将此项设为特定值,否则的话,就不必设置此项,让应用程序按需请求内存。
l 创建索引占有的内存:该项是指定在索引创建排序过程中要使用的内存量。其值为零时表示由操作系统动态分配。
说明:一般情况下,此项都不需要设置,不过也可以输入704至2147483647之间的值。
l 每次查询占用的最小内存:该项是指定为执行查询分配的内存量,默认为1024KB。
说明:如果经常执行的SQL查询语句涉及到排序,或要查询的数据量很大的话,可以将此值设得大一些。此值的范围为512KB至2147483647KB之间。
l 配置值和运行值:配置值是显示本对话框上选项的配置值,运行值是查看本对话框上选项的当前运行的值,只时是只读的。
技巧:在配置值修改过后,可以单击运行值来查看更改是否已经生效,如果没有生效的话,就要重新启动SQL Server实例了。
图4.42 【内存】选项卡
3 处理器
图4.43所示的是服务器属性的【处理器】选项卡,在此页里可以查看或修改CPU选项,一般来说,只有安装了多个处理器才需要配置此项。选项卡里有以下项目:
l 处理器关联:为了执行多任务,Windows 2000和Windows Server 2003有时会在不同的CPU之间移动进程线程,对于操作系统而言,这种活动是高效的,但是对于高负荷的SQL Server而言,该活动会降低其性能,因为每个处理器缓丰都会不断地重新加载数据。这种线程与处理器之间的关联就是“处理器关联”。如果将每个处理器分配给特定线程,那么就会消除处理器的重新加载需要和减少处理器之间的线程迁移。
l I/O关联:与处理器关联类似。此项是设置是否将SQL Server磁盘I/O绑定到指定的CPU子集。
l 自动设置所有处理器的处理器关联掩码:此项是设置是否允许SQL Server设置处理器关联。如果启用的话,操作系统将自动为SQL Server 2005分配CPU
l 自动设置所有处理器的I/O关联掩码:此项是设置是否允许SQL Server设置I/O关联。如果启用的话,操作系统将自动为SQL Server 2005分配磁盘控制器。
l 最大工作线程数:默认设置为0,也就是允许SQL Server动态设置工作线程数。一般来说,此值不用修改。
l 提升SQL Server的优先级:指定SQL Server是否应当比其他进程具有优先处理的级别。
说明:如果服务器上主要运行的服务是SQL Server的话,可以选用此项。
l 使用Windows纤程:使用 Windows 纤程代替 SQL Server 服务的线程。
注意:此选项仅适用于 Windows 2003 Server Edition。
图4.43 【处理器】选项卡
4 安全性
图4.44所示的是服务器属性的【安全性】选项卡,可以用来查看或修改服务器的安全选项。选项卡里有以下项目:
l 服务器身份验证:用于更改SQL Server 2005服务器的身份验证方式,与安装SQL Server 2005时的选项相同,有“Windows身份验证模式”和“混合模式”(SQL Server和Windows身份验证模式)两种。
注意:
1、更改安全性配置之后需要重新启动服务。
2、如果是从“Windows身份验证模式”改到“混合模式”的话,不会自动启用sa账户。如果要使用sa账户,要执行带有enable选项的Alter Login命令。
l 登录审核:此项是设置是否对用户登录SQL Server 2005服务器的情况进行审核。
说明:如果是对用户登录SQL Server 2005服务器的情况进行审核的话,审核结果会在【管理工具】à【事件查看器】的【应用程序】里查看到审核情况。更改审核级别后需要重新启动服务。
l 服务器代理账户:指定是否启用供“xp_cmdshell”使用的账户。“xp_cmdshell”是一个T-SQL存储过程,可以生成Windows命令,并以字符串的形式传递和执行。在执行操作系统命令时,代理账户可以模拟登录、服务器角色和数据库角色。
l 启用C2审核跟踪:C2是一个政府安全等级,它保证系统能够保护资源并具有足够的审核能力。C2模式允许监视对所有数据库实体的所有访问企图。C2 审核模式数据保存在默认实例“Data”目录中的某个文件内,或命名实例的“Data”目录中的某个文件内。如果审核日志文件达到了 200 MB 的大小限制,SQL Server 将创建一个新文件、关闭旧文件并将所有新的审核记录写入新文件。此过程将继续下去,直到审核数据目录已满或审核被关闭。
说明:C2 审核模式将大量事件信息保存在日志文件中,可能会导致日志文件迅速增大。如果保存日志的数据目录空间不足,SQL Server 将自行关闭。
l 跨数据库所有权链接:选中此项将允许数据库成为跨数据库所有权链的源或目标。
图4.44 【安全性】选项卡
5 连接
图4.45所示的是服务器属性的【连接】选项卡,选项卡里有以下项目:
l 最大并发连接数:默认值为0,表示无限制。也可以输入数字还限制SQL Server 2005允许的连接数。
注意:如果将此值设置过小,可能会阻止管理员进行连接,但是“专用管理员连接”始终可以连接。
l 使用查询调控器防止查询长时间运行:为了避免使用SQL查询语句执行过长时间,导致SQL Server服务器的资源被长时间占用,可以并设置此项。选择此项后输入最长的查询运行时间,超过这个时间后,会自动中止查询,以释放更多的资源。
l 默认连接选项:默认连接的选项内容比较多,如表4.1所述:
表4.1 服务器属性里的连接选项
配置选项 |
说明 |
disable deferred constraint checking |
控制执行期间或延迟的约束检查 |
implicit transactions |
控制在运行一条语句时,是否隐式启动一项事务 |
cursor close on commit |
控制执行提交操作后游标的行为 |
ansi warnings |
控制集合警告中的截断和NULL |
ansi padding |
控制固定长度的变量的填充 |
ansi nulls |
在使用相等运算符时控制 NULL 的处理 |
arithmetic abort |
在查询执行过程中发生溢出或被零除错误时终止查询 |
arithmetic ignore |
在查询过程中发生溢出或被零除错误时返回NULL |
quoted identifier |
计算表达式时区分单引号和双引号 |
no count |
关闭在每个语句执行后所返回的说明有多少行受影响的消息 |
ansi null default on |
更改会话的行为,使用 ANSI 兼容为空性。未显式定义为空性的新列定义为允许使用空值 |
ansi null default on |
更改会话的行为,不使用 ANSI 兼容为空性。未显式定义为空性的新列定义为不允许使用空值 |
concat null yields null |
当将 NULL 值与字符串连接时返回 NULL |
numeric round abort |
当表达式中出现失去精度的情况时生成错误 |
xact abort |
如果Transact-SQL语句引发运行时错误,则回滚事务 |
l 允许远程连接到此服务器:选中此项则允许从运行的SQL Server实例的远程服务器控制存储过程的执行。远程查询超时值是指定在SQL Server超时之前远程操作可执行的时间,默认为600秒。
l 需要将分布式事务用于服务器到服务器的通信:选中此项则允许通过Microsoft分布式事务处理协调器(MS DTC)事务保护服务器到服务器过程的操作。
图4.45 【连接】选项卡
6 数据库设置
图4.46所示的是服务器属性的【数据库设置】选项卡,选项卡里有以下项目:
l 默认索引填因子:该项的作用是指定在SQL Server使用现在数据创建新索引时对每一页的填充程度。在SQL Server 2005中,会为索引分配8KB大小的数据分页。索引的填充因子就是规定向索引页中插入索引数据最多可以占用的页面空间。例如填充因子为60%的话,那么在向索引页面中插入索引数据时最多可以占用页面空间的60%,剩下的40%的空间保留给索引的数据更新时用。当表中产生索引的数据发生更新时,SQL Server 2005就会自动维护和更新索引页。由于在页填充时SQL Server必须花时间来拆分页,因此填充因子会影响性能。本项的默认值是0,有效值是0到100。
l 备份和还原:此项主要是指定SQL Server 2005等待更换新磁带的时间。【无限期】指SQL Server在等待新备份磁带时永不超时;【尝试一次】是指如果需要备份磁带时,但它却不可用,则SQL Server将超时。【尝试】的分钟数是指如果备份磁带在指定的时间内不可用,SQL Server将超时。【默认备份媒体保持期(天)】是提供一个系统范围默认值,指示在用于数据库备份或事务日志备份后每一个备份媒体的保留时间。此选项可以防止在指定的日期前覆盖备份。
l 恢复:此项可设置的为【恢复间隔】,用于设置每个数据库恢复时所需的最大分钟数。如果为0的话,是让SQL Server自动配置。
l 数据库默认位置:用于指定数据文件和日志文件的默认位置。
图4.46 【数据库设置】选项卡
7 高级
图4.47所示的是服务器属性的【高级】选项卡,选项卡里有以下项目:
l 并行的开销阈值:本项是指定一个数字,如果一个SQL查询语句的开销超过这个数字的话,那么就会启用多个CPU来并行执行高于这个数字的查询,以优化性能。开销指的是在特定硬件配置中运行串行计划估计需要花费的时间,单位为秒。
l 查询等待值:该项是指定在超时之前查询等待资源的秒数,有效值是0到2147483647。默认值是-1,其意思是按估计查询开销的25倍计算超时值。
l 锁:该项也是指定一个数字,用于设置可用锁的最大数目,以限制SQL Server为锁分配的内存量。默认值为0,也就是允许SQL Server根据系统要求来动态分配和释放锁。
技巧:推荐使用SQL Server动态地使用锁,也就是设为0
l 最大并行度:该限用于设置执行并行计划时能使用的CPU的数量,最大值为64。如果设为0的话,则是使用所有可用的处理器;如果设为1的话,则是不生成并行计划。默认值为0要。
l 网络数据包大小:设置整个网络使用的数据包的大小,单位为字节。默认值是4096字节。
技巧:如果应用程序常执行大容量复制操作或者是发送、接收大量的text和image数据的话,可以将此值设大一点。如果应用程序接收和发送的信息量都很小,那么可以将其设为512字节。
l 远程登录超时值:该项用于指定从远程登录尝试失败返回之前等待的秒数。默认值为20秒,如果设为0的话,则允许无限期等待。此项设置影响为执行异类查询所创建的与OLE DB访问接口的连接。
l 两位数年份截止:该项指定从1753到9999之间的整数,该整数表示将两位数年份解释为四位数年份的截止年份。
l 默认全文语言:该项用于指定全文索引列的默认语言。全文索引数据的语言分析取决于数据的语言。默认值为服务器的语言。
l 默认语言:该项用于指定默认情况下所有新创建的登录名使用的语言。
l 启动时扫描存储过程:该项用于指定SQL Server将在启动时是否扫描并自动执行存储过程。如果设为true,则SQL Server在启动时将扫描并自动运行服务器上定义的所有存储过程。
l 游标阈值:该项用于指定游标集中的行数,如果起过此行数,将异步生成游标键集。当游标为结果集生成键集时,查询优化器会估算将为该结果集返回的行数。如果查询优化器估算出的返回行数大于此阈值,则将异步生成游标,使用户能够在继续填充游标的同时从该游标中提取行。否则,同步生成游标,查询将一直等待到返回所有行。如果设置为-1,则将同步生成所有键集,此设置适用于较小的游标集。如果设置为0,则将异步生成所有游标键集。如果设置为其他值,则查询优化器将比较游标集中的预期行数,并在该行数超过所设置的数量时异步生成键集。
l 允许触发器激发其他触发器:该项用于指定触发器是否可以执行启动另一个触发器的操作,也就是指定触发器是否允许递归或嵌套。
l 最大文本复制大小:该项指定用一个INSERT、UPDATE、WRITETEXT或 UPDATETEXT语句可以向复制列添加的text和image数据的最大值,单位为字节。
图4.47 【高级】选项卡
8 权限
图4.48所示的是服务器属性的【权限】选项卡,该选项卡用于授予或撤销账户对服务器的操作权限。
在【登录名或角色】的列表框里显示的是多个可以设置权限的对象。单击【添加】按钮,可以添加更多的“登录名”和“服务器角色”到这个列表框里。单击【删除】按钮也可以将列表框中已有的登录名或角色删除。
在【显式权限】的列表框里,可以看到【登录名或角色】列表框里的对象的权限。在【登录名或角色】列表框里选择不同的对象,在【显式权限】的列表框里会有不同的权限显示。在这里也可以为【登录名或角色】列表框里的对象设置权限。
图4.48 【权限】选项卡