Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2248652
  • 博文数量: 310
  • 博客积分: 6853
  • 博客等级: 准将
  • 技术积分: 2833
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-04 16:41
文章分类

全部博文(310)

文章存档

2013年(17)

2012年(42)

2011年(76)

2010年(71)

2009年(99)

2007年(2)

2006年(1)

2005年(2)

分类: 数据库开发技术

2009-09-16 23:31:54

设置服务器配置选项

您可以通过使用 SQL Server Management Studio 或 sp_configure 系统存储过程配置选项来管理和优化 SQL Server 资源。其中一些配置选项可以使用 SQL Server 外围应用配置器工具进行配置。大多数常用的服务器配置选项可以通过 SQL Server Management Studio 管理;而所有配置选项都可通过 sp_configure 访问。在设置这些选项之前应该认真考虑这些选项对系统的影响。

ms189631.note(zh-cn,SQL.90).gif重要提示:
高级选项是只能由有经验的数据库管理员或认证的 SQL Server 技术人员来更改的选项。

使用 sp_configure 时,必须在设置配置选项之后运行 RECONFIGURE 或 RECONFIGURE WITH OVERRIDE。RECONFIGURE WITH OVERRIDE 语句通常专门用来设置那些使用起来应当十分小心的配置选项。但是,RECONFIGURE WITH OVERRIDE 可用于所有的配置选项,并且可以用它代替 RECONFIGURE。

ms189631.note(zh-cn,SQL.90).gif注意:
RECONFIGURE 在事务内部执行。如果任意重新配置选项失败,则所有重新配置操作都将失效。

每个选项的值都可使用以下语句确定。

SELECT * FROM sys.configurations
ORDER BY name ;
GO

下面是一个脚本示例,本示例使用 sp_configure fill factor 选项从默认设置改为值 100

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'fill factor', 100;
GO
RECONFIGURE;
GO

配置选项在下面两种情况下生效:

  • 在设置选项并发出 RECONFIGURE(在某些情况下为 RECONFIGURE WITH OVERRIDE)语句之后立即生效。
    -或-
  • 执行以上操作并重新启动 SQL Server 实例之后生效。

若要使用 sp_configure 配置高级选项,必须首先在 'show advanced options' 选项设置为 1 的情况下运行 sp_configure,然后运行 RECONFIGURE

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'cursor threshold', 0;
GO
RECONFIGURE;
GO

在上面的示例中,将立即重新配置 cursor threshold 选项。cursor threshold 的新值将出现在配置选项 value_in_use 列和 value 列中。

需要重新启动 SQL Server 实例的选项起初只显示 value 列中更改过的值。在重新启动后,新值将出现在 value 列和 value_in_use 列中。

但有些选项需要在重新启动服务器后,新的配置值才能生效。如果设置了新值并在没有重新启动服务器的情况下运行 sp_configure,则新值将出现在配置选项的 value 列中,而不是出现在 value_in_use 列中。重新启动服务器之后,新值将出现在 value_in_use 列中。

自配置选项是指 SQL Server 根据系统需要进行调整的选项。在大多数情况下,这就无需手动设置值。这方面的例子包括 min server memorymax server memoryuser connections 选项。

下表列出了所有可用的配置选项、可能的设置范围及其默认值。配置选项按以下字母代码标记:

  • A = 高级选项,仅允许有经验的数据库管理员或认证的 SQL Server 技术人员进行更改,并且需要将 show advanced options 设为 1。
  • RR = 需要重新启动数据库引擎的选项。
  • SC = 自配置选项。

    配置选项 最小值 最大值 默认值

    (A)

    0

    1

    0

    (A,RR)

    -2147483648

    2147483647

    0

    (A,仅适用于 64 位版本的 SQL Server)

    -2147483648

    2147483647

    0

    (A)

    -2147483648

    2147483647

    0

    (A,仅适用于 64 位版本的 SQL Server)

    -2147483648

    2147483647

    0

    (A)

    0

    1

    0

    (当 SQL Server 代理启动时,改为 1。如果 SQL Server 代理设置为在安装过程中自动启动,则为 1。)

    (已过时。请勿使用。将在重新配置期间导致错误。)

    0

    1

    0

    (A,RR)

    0

    1

    0

    (A)

    0

    86400

    0

    (A,RR)

    0

    1

    0

    0

    1

    0

    (A,RR)

    0

    1

    0

    (A)

    0

    32767

    5

    0

    1

    0

    cursor threshold (A)

    -1

    2147483647

    -1

    (A)

    0

    1

    0

    (A)

    0

    2147483647

    1033

    0

    9999

    0

    (A)

    0

    1

    1

    (A)

    0

    1

    0

    (A,RR)

    0

    100

    0

    ft crawl bandwidth (max),请参阅 (A)

    0

    32767

    100

    ft crawl bandwidth (min),请参阅 (A)

    0

    32767

    0

    ft notify bandwidth (max),请参阅 (A)

    0

    32767

    100

    ft notify bandwidth (min),请参阅 (A)

    0

    32767

    0

    (A,SC)

    704

    2147483647

    0

    (A)

    0

    2

    0

    (A,RR)

    0

    1

    0

    (A,RR,SC)

    5000

    2147483647

    0

    (A)

    0

    64

    0

    (A)

    0

    256

    4

    (A,SC)

    16

    2147483647

    2147483647

    0

    2147483647

    65536

    (A,RR)

    128

    32767

    (对于 32 位 SQL Server,建议最大为 1024;对于 64 位 SQL Server,建议最大为 2048。)

    0

    归零操作将根据处理器的数量自动配置最大工作线程数,可以使用公式 (256+(<处理器数> -4)* 8) 来计算 32 位 SQL Server 的线程数,64 位 SQL Server 的线程数为 32 位的 2 倍。

    (A,RR)

    0

    365

    0

    (A)

    512

    2147483647

    1024

    (A,SC)

    0

    2147483647

    8

    0

    1

    1

    (A)

    512

    32767

    4096

    (A)

    0

    1

    0

    (A,RR,已过时)

    0

    2147483647

    0

    (A)

    1

    3600

    60

    (A)

    0

    1

    0

    (A,RR)

    0

    1

    0

    (A)

    0

    2147483647

    0

    (A)

    -1

    2147483647

    -1

    (A,SC)

    0

    32767

    0

    (RR)

    0

    1

    1

    0

    1

    0

    0

    2147483647

    20

    0

    1

    0

    0

    2147483647

    600

    (A)

    0

    1

    0

    (A,RR)

    0

    1

    0

    server trigger recursion

    0

    1

    1

    (A,RR,已过时)

    0

    1

    0

    0

    1

    0

    (A)

    0

    1

    1

    (A)

    0

    1

    0

    (A)

    0

    1

    0

    two digit year cutoff (A)

    1753

    9999

    2049

    (A,RR,SC)

    0

    32767

    0

    (A,仅出现在 SQL Server 2005 Express Edition 中)

    5

    65535

    60

    (A,仅 SQL Server 2005 Express Edition 中提供)

    0

    1

    0

    0

    32767

    0

    (A)

    0

    1

    0

    (A)

    0

    1

    0

阅读(3966) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~