随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
目前,原Sybase所有产品(包括:Adaptive Server Enterprise、Sybase IQ、Replication Server、PowerDesigner等)的官方手册仍然可以从https://infocenter.sybase.com/help/index.jsp进行浏览或下载。暂不清楚该网站https://infocenter.sybase.com/help/index.jsp何时会被完全迁移到SAP Support上!
Sybase官方手册英文版有html和pdf两种格式,而中文版手册只有pdf一种格式。为了国内Sybase用户更方便、快捷地搜索Sybase常见产品的官方手册内容,特将中文版Sybase官方手册转为html格式!
Sybase产品官方手册中文版的html格式所有内容的版权归SAP公司所有!本博客站长是Sybase数据库的铁杆粉丝!
如有Sybase数据库技术问题需要咨询,请联系我!
以下官方手册为ASE 15.7 ESD#2中文版:
- 新增功能公告 适用于 Windows、Linux 和 UNIX 的 Open Server 15.7 和 SDK 15.7
- 新增功能摘要
- 新增功能指南
- ASE 15.7 发行公告
- 配置指南(windows)
- 安装指南(windows)
- 参考手册:构件块
- 参考手册:命令
- 参考手册:过程
- 参考手册:表
- Transact-SQL® 用户指南
- 系统管理指南,卷 1
- 系统管理指南,卷 2
- 性能和调优系列:基础知识
- 性能和调优系列:锁定和并发控制
- 性能和调优系列:监控表
- 性能和调优系列:物理数据库调优
- 性能和调优系列:查询处理和抽象计划
- 性能和调优系列:使用 sp_sysmon 监控 Adaptive Server
- 性能和调优系列:利用统计分析改进性能
- 程序员参考 jConnect for JDBC 7.0.7
- Adaptive Server Enterprise 中的 Java
- 组件集成服务用户指南
- Ribo 用户指南
- 内存数据库用户指南
- Sybase Control Center for Adaptive Server® Enterprise
- 安全性管理指南
- 实用程序指南
配置参数
许多情况下,配置参数允许的最大值通常受可用内存所限,而不是受
sp_configure 限制所限。
注释 若要查找所用平台和 Adaptive Server 版本支持的最大值,请参见 适用于所用平台的《安装指南》中的“Adaptive Server 规范”。
以下各部分包括每个配置参数的摘要信息和详细信息。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
状态 |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
abstract plan cache 启用抽象计划散列键的高速缓存。请参见《性能和调 优系列:查询处理和抽象计划》中的第 12 章“创建和使用抽象计划”。 必须首先启用 abstract plan load,计划高速缓存才能生效。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
abstract plan dump 使抽象计划能够保存到 ap_stdout 抽象计划组中。请参 见《性能和调优系列:查询处理和抽象计划》中的第 12 章“创建和使用 抽象计划”。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
abstract plan load 启用查询与 ap_stdin 抽象计划组中的抽象计划的关联。 请参见《性能和调优系列:查询处理和抽象计划》中的第 12 章“创建 和使用抽象计划”。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
abstract plan replace 启用对 ap_stdout 抽象计划组中的抽象计划的计划替换。 请参见《性能和调优系列:查询处理和抽象计划》中的第 12 章“创建和 使用抽象计划”。必须首先启用 abstract plan load,替换模式才能生效。
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信、物理内存
additional network memory 设置额外内存的最大大小,这些额外内存可以 用于比缺省包大小更大的网络包。Adaptive Server 将输入的值向下舍入 到最近的 2K 值。缺省值表示没有额外空间可供分配给较大的包。
当一个登录操作请求的包大小比较大时,Adaptive Server 首先会检查它 是否具有足够的内存来满足该请求。如果没有,Adaptive Server 则会寻 找最大可用内存块,然后尝试分配比最大内存块小的适当内存(其大小 为 default network packet size 的倍数)。如果尝试失败,Adaptive Server 则会减少请求的值,减少量等于 default network packet size 的字节数(如 果有)。Adaptive Server 最多会连续尝试 10 次,直到该大小等于 default network packet size 的值为止。在进行第十次尝试时,Adaptive Server 会 使用 default network packet size 的值作为包大小。
如果增大 max network packet size,则必须增大 additional network memory, 因为所有留给用户使用的已分配网络内存都等于缺省大小。Adaptive Server 确保每个用户连接都能够以缺省包大小进行登录。
如果增大 max network packet size 而不增大 additional network memory,则 Adaptive Server 不保证请求的网络包大于缺省大小的客户端能够按请求 的包大小登录。
增加 additional network memory 可能会提高传送大量数据的应用程序的 性能。应用程序使用较大的包大小时,要确定 additional network memory 的值:
1 估计同时请求较大的包的用户数目和他们的应用程序请求的大小;
2 将该总和乘以 3,因为每个连接需要 3 个缓冲区;
3 为服务器增加用于开销的内存:32 位服务器增加 2%,64 位服务器 增加 4%;
4 将该值取整到 2048 的最近倍数。 例如,估计较大包大小的所有这些需求:
Application |
包大小 |
开销 |
bcp |
8192 |
|
Client-Library |
8192 |
|
Client-Library |
4096 |
|
Client-Library |
4096 |
|
总 |
24576 |
|
乘以 3 个缓冲区/用户 计算 2% 的开销 增加开销 |
* 3=73728
+ 1474 |
* .02=1474 |
额外的网络内存 |
75202 |
|
向上舍入到 2048 的倍数 |
75776 |
将 additional network memory 设置为 75,776 字节。
allocate max shared memory
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、物理内存
allocate max shared memory 确定 Adaptive Server 是分配在启动时 max memory 指定的所有内存,还是只分配配置参数需要的内存量。
通过将 allocate max shared memory 设置为 0,可确保 Adaptive Server 只使 用当前配置所需的共享内存量,并在启动时只分配配置参数所需的内存 量,它比 max memory 值要小。
如果将 allocate max shared memory 设置为 1,则 Adaptive Server 在启动时 分配 max memory 指定的所有内存。如果将 allocate max shared memory 设 置为 1,并且增大 max memory,则 Adaptive Server 将尝试立即分配内存。 如果内存分配失败,Adaptive Server 会向错误日志中写入消息。检查错 误日志以验证是否未发生错误。
成功的内存分配意味着 Adaptive Server 对任何内存配置的更改总有其所 需的内存,并且服务器在因附加的内存而重新调整时性能不会降低。但 是,如果不能精确地估计出内存的增长量,并将 max memory 设置为较 大的值,则可能会浪费总的物理内存。
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 Query Tuning
allow backward scans 控制优化程序如何执行包含 order by...desc 命令的
select 查询:
• 该值设置为 1 时,优化程序可按页链以递减索引顺序访问索引或 表行。
• 该值设置为 0 时,优化程序通过按索引页指针以升序将这些行选入 工作表,然后按降序对该工作表进行排序。
第一种方法(执行向后扫描)能够加快访问表的速度,这些表需要结果 按列值的降序排序。但是,某些应用程序可能由于执行了向后扫描而出 现死锁。特别地,如果存在一个包含 delete 或 update 的查询,它向前扫 描了相同的索引,则会增加死锁。也可能由于索引中的页面拆分而产生 死锁。
使用 print deadlock information 将有关死锁的消息发送到错误日志。请参 见 第 212 页的“ print deadlock information ”。或者,可以使用 sp_sysmon 检查死锁。请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列:锁定和并发控制》)。
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
allow nested triggers 控制嵌套触发器的使用。将值设置为 1 时,由触发器 所做的数据修改可能会引发其它触发器。如果将 allow nested triggers 设置 为 0,则可禁用嵌套触发器。set 选项 self_recursion 控制由触发器所做的 修改是否可使该触发器再次触发。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统安全员
配置组 与安全性相关的参数
allow procedure grouping 控制对同名的存储过程进行分组的能力,从而使 用单个 drop procedure 语句就可删除一组存储过程。
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 备份/恢复、网络通信
allow remote access 控制从远程 Adaptive Server 的登录。缺省值为 1,允 许 Adaptive Server 与 Backup Server 通信。
注释 如果设置为 0,则将禁止服务器到服务器的 RPC。因为 Adaptive Server 通过 RPC 与 Backup Server 进行通信,所以将该参数设置为 0 就不 可能进行数据库备份。
因为执行 RPC 需要其它系统管理操作来启用远程服务器而不是 Backup Server,所以将该选项设置为 1 不会产生安全风险。
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
allow resource limits 控制资源限制的使用。在将值设置为 1 时,服务器为 时间范围、资源限制和服务器内部报警分配内部内存。服务器还将可应 用的范围和限制内部分配给用户会话。showplan 和 statistics io 的输出将 显示优化程序对查询的开销估计。将 allow resource limits 设置为 0 可禁用 所有资源限制。
摘要信息 |
||
缺省值 |
0(关闭) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统安全员 |
|
配置组 |
网络通信 |
allow sendmsg 允许或禁止将消息从 Adaptive Server 发送到用户数据报协 议 (UDP) 端口。当 allow sendmsg 设置为 1 时,任何用户都可使用 sp_sendmsg 或 syb_sendmsg 发送消息。若要设置 Adaptive Server 所使用 的端口号,请参见 第 242 页的“ syb_sendmsg port number ”。
注释 Windows 不支持将消息发送到 UDP 端口。
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Disk I/O
allow sql server async i/o 使 Adaptive Server 能够使用异步磁盘 I/O 运行。 若要使用异步磁盘 I/O,必须同时在 Adaptive Server 和操作系统上启用该 参数。有关在操作系统级启用异步 I/O 的信息,请参见操作系统文档。
异步运行磁盘 I/O 都比同步运行快。这是因为当 Adaptive Server 发出异 步 I/O 时,它不必等待响应即可发出随后的 I/O。
allow updates to system tables
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
allow updates to system tables 使具有系统管理员角色的用户能够更改系统 表并创建可修改系统表的存储过程。如果启用 allow updates to system tables,则数据库管理员可以在其拥有的任何表中更新系统表。
系统表包括:
• master 数据库中所有 Sybase 提供的表
• 用户数据库中所有以“sys”开头的表以及在 sysobjects 表中其 ID 值 小于或等于 100 的表
警告!如果对系统表进行不正确的变更,则可能会导致数据库破坏 和数据丢失。若要防止可能损坏数据库的错误,请在修改系统表时 始终使用 begin transaction。完成修改后,应立即禁用 allow updates to system tables。
allow updates to system tables 设为打开状态时所创建的存储过程和触发器 可以更新系统表,即便在此参数被设置为关闭后也是如此。在将 allow updates to system tables 设置为打开状态时,就会产生一段“脆弱时间 段”,即在此段时间内用户可以变更系统表或创建将来可能会变更系统 表的存储过程。
由于系统表非常重要,Sybase 建议您仅在严格控制的情况下将此参数设 置为打开。若要确保当系统表可被直接更新时没有其他用户可以访问 Adaptive Server,应以单用户模式重新启动 Adaptive Server。有关详细信 息,请参见《实用程序指南》中的 startserver 和 dataserver。
注释 全服务器范围内的配置选项 allow updates to system tables 优先于 allow updates to system tables 的存储过程设置。如果未在服务器级启用 allow updates to system tables,单个存储过程设置将确定是否可以修改系 统目录。
摘要信息 |
||
缺省值 |
200 |
|
值的范围 |
100 - 10000 |
|
Status |
静态 |
|
显示级别 |
||
要求的角色 |
||
配置组 |
诊断 |
|
|
留作将来使用。 |
|
摘要信息 |
||
缺省值 |
100 |
|
值的范围 |
1 - 65535 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统安全员 |
|
配置组 |
内存使用、与安全性相关的参数 |
由用户进程生成的审计记录一直保存在内存中的审计队列,直到可以对 这些记录进行处理并写入审计追踪时为止。若要更改审计队列的大小, 系统安全员可以使用 audit queue size。配置队列大小时,要对性能和风 险加以权衡。如果队列太大,记录可在其中保留一段时间。如果系统失 败,记录只要在队列中,就有可能丢失。但是,如果队列太小,就会经 常处于充满状态,从而影响系统的总体性能;如果审计队列处于充满状 态,生成审计记录的用户进程就会进入休眠状态。
以下是确定审计队列大小的几个原则。此外,还必须考虑要在您的节点 上执行的审计量。
• 单个审计记录需要的内存是 424 字节;但是,当一条记录被写入数 据页时,可以只有 22 字节。
• 在系统失败时可能丢失的审计记录的最大数目是审计队列的大小(记 录的数目)加上 20。记录离开审计队列后将驻留在缓冲页上,直到 将其写入磁盘上的当前审计表为止。每次最多只能将页中的 20 条记 录刷新到磁盘(如果审计进程不是一直很忙,则可能更少)。
• 在系统审计表中,extrainfo 字段和包含名称的字段的长度是可变的, 所以包含完整名称信息的审计记录通常更大。
一页可容纳的审计记录的数目最少为 4,并可多达 80 以上。缺省审计队 列大小为 100 条审计记录,所需内存大约为 42K。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统安全员 |
|
配置组 |
与安全性相关的参数 |
auditing 启用或禁用对 Adaptive Server 的审计。
automatic cluster takeover
缺省值 1
有效值 0(启用),1(禁用)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
如果将 automatic cluster takeover 设置为 1,将允许启动的实例自动从突发 总体集群故障中恢复。如果将 automatic cluster takeover 设置为 0,除非包 括 --cluster_takeover 参数,否则集群可能无法从突发集群故障切换中恢复。
Cluster Edition 使用定额心跳和集群接管算法来确定应在何时执行集群接 管。此算法使启动的实例能够区分以下两种情况:由于集群崩溃(在这 种情况下适合于接管)而无法加入集群的情况,以及由于启动的实例未 连接网络(这种情况下不适合于接管)而无法加入集群的情况。
如果禁用 automatic cluster takeover(将其设置为 0),则 Cluster Edition
会以建议消息的形式将此算法的结果写入错误日志,然后退出。
如果启用 auotomatic cluster takeover(将其设置为 1),则 Cluster Edition 将作为集群协调器启动,并恢复数据库。在启用了 I/O 防护的环境中, 可确保此操作是安全操作。
在没有 I/O 防护的环境中,算法故障可能会导致数据损坏,因此您可以 将该配置参数设置为 0 以禁用此算法。但是,没有 I/O 防护的环境存在 数据损坏的风险,而禁用自动集群接管并不能减轻所有这些风险。
builtin date strings
摘要信息
缺省值 0
值的范围 0 - 1
Status 动态
显示级别 要求的角色
配置组 查询调优
如果给定的字符串作为参数取代按时间顺序的值,则服务器会将其解释 为 datetime 值,而不考虑其外观精度。通过设置配置参数 builtin date strings 或设置 builtin_date_strings 选项,可以更改此缺省行为。当设置这些选项 时,服务器会将为按时间顺序的 builtin 指定的字符串解释为 bigdatetime。
摘要信息
缺省值 50
值的范围 5 - 50
Status 静态
显示级别 要求的角色
配置组 诊断
留作将来使用。
capture compression statistics
摘要信息
缺省值 0(关闭)
值的范围 1(打开),0(关闭)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 SQL Server 管理
启用 monTableCompression 监控表以开始捕获压缩统计信息。
check password for digit
摘要信息
缺省值 0(关闭)
值的范围 1(打开),0(关闭)
Status 动态
显示级别 10
要求的角色 系统安全员
配置组 与安全性相关的参数
系统安全员可以指示服务器使用全服务器范围的配置参数 check password for digit 来检查口令中是否至少包含一个字符或数字。如果设置 了此参数,并不会影响现有的口令。
CIPC large message pool size
缺省值 512
有效值 512 - 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
CIPC large message pool size 指定 CIPC 在启动时分配的大型消息缓冲区 的数目。
CIPC regular message pool size
缺省值 8192
有效值 2048 - 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
CIPC regular message pool size 指定 CIPC 在启动时分配的常规消息缓冲 区的数目。
摘要信息
缺省值 50
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 组件集成服务
当执行从一个 Adaptive Server 到另一个 Adaptive Server 的数据批量传输 时,CIS 会在内部将数据行放入缓冲区,然后要求 Open Client 批量库将 它们作为一个块进行传输。数组的大小由 cis bulk insert array size 控制。
cis bulk insert batch size
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 组件集成服务
cis bulk insert batch size 确定使用 select into 从源表向目标表进行批量复制 时,一批可包含多少行。
如果将 cis bulk insert batch size 保留为 0,则会在一个批处理中复制所有 行。否则,按该参数指定的行数将行复制到目标表中后,服务器向目标 服务器提出批量提交,从而提交该批处理。
如果收到客户端生成的正常批量复制操作(例如由 bcp 实用程序生成的 操作),则该客户端应该会控制批量处理的大小,服务器将忽略该配置 参数的值。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0–32767 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
cis connect timeout 确定成功建立 Client-Library 连接所等待的时间(以秒 为单位)。
摘要信息 |
||
缺省值 |
50 |
|
值的范围 |
1 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
cis cursor rows 指定用于 cursor open 和 cursor fetch 操作的游标行数。增加 该值意味着,在一次操作中可以获取更多的行。这会加快速度,但要求 使用更多的内存。
cis idle connection timeout
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 组件集成服务
cis idle connection timeout 将 Adaptive Server 配置为检查未使用的时间超过 指定秒数的任何远程服务器 CIS 连接。Adaptive Server 将删除未使用的 连接并重新分配其资源。
虽然指定的数字以秒为单位,但管家任务至多每分钟唤醒一次,因此, 空闲连接处于空闲状态的时间可能比配置的值长得多。如果空闲连接上 的事务处于活动状态,则 Adaptive Server 不会删除这些连接;如果用户 执行任何访问此连接的命令,则会自动重新建立连接。
摘要信息 |
||
缺省值 |
512 |
|
值的范围 |
512–32768 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
cis packet size 指定启动连接后,将在服务器和远程服务器之间交换的
Tabular Data Stream™ (TDS) 包的大小。
大多数系统上的缺省包大小为 512 字节,这对于大多数应用程序是足够 的。但是,如果包大小更大一些,或许能显著提高查询性能;当涉及 text、unitext、image 或批量数据时,效果尤其明显。
如果指定的包大小大于缺省值,则必须使用以下各项配置目标服务器, 以允许可变长度的包大小:
• additional netmem
• maximum network packet size
摘要信息 |
||
缺省值 |
0(关闭),缺省值为 1(用于 Cluster Edition) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
cis rpc handling 为远程过程调用 (RPC) 处理指定缺省方法。将 cis rpc handling 设置为 0 表示将 Adaptive Server 节点处理器设置为缺省的 RPC 处理机制。将该参数设置为 1 将强制 RPC 处理使用组件集成服务访问方 法。请参见《组件集成服务用户指南》中的 set cis rpc handling。
cluster heartbeat interval
缺省值 10
有效值 1– 127
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
cluster heartbeat interval 控制集群实例用于发送和检查心跳状态的间隔。
如果对 cluster heartbeat interval 使用较低的值,将会缩短故障检测时间, 但会增加由于瞬时问题(例如 CPU 过载)而导致误报故障的风险。将 cluster heartbeat interval 调优为较大的值可以减小误报故障的风险,但会 增加检测故障所需的时间。
cluster heartbeat retries
摘要信息
缺省值 1
有效值 1– 127
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
cluster heartbeat retries 控制实例在进入故障模式之前重试失败的集群心 跳的次数。
将 cluster heartbeat retries 调优为较低的值可缩短检测故障所需的时间, 但会增加由于瞬时问题(例如 CPU 过载)而导致误报故障的风险。将 cluster heartbeat retries 调优为较大的值可以减小误报故障的风险,但会 增加检测故障所需的时间。
cluster redundancy level
缺省值 1
有效值 1 到 n - 1,其中 n 是在 cluster.cfg 或仲裁文件中指 定的最大实例数。
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
cluster redundancy level (CRL) 控制共享磁盘集群中可恢复的出现故障的 实例数。它是可同时出现故障(同时允许恢复以并发方式继续执行其它 活动)的实例的最大数量。如果出现故障的实例数超出 CRL 指定的最 大数量,则集群将关闭。
若要启动集群,cluster redundancy level 的值至少要比 cluster.cfg 或仲裁文 件中指定的最大实例数的值小 1。因此,如果进行以下任一设置,则集 群将无法启动:
• 将最大实例数的值设置为等于或小于 cluster redundancy level 的值
• 将 cluster redundancy level 的值设置为等于或大于最大实例数的值
由于集群中存在每个锁的多个副本,因此 cluster redundancy level 值的增 加也会导致消息传送通信量的增加,从而增加维持这一冗余级别所需的 开销。
其它配置参数(例如 number of locks 和 cache size)对于大于 1 的 cluster redundancy level 值也需要更多资源,这意味着您必须为相同的 number of locks 值增加 max memory。
除非多实例故障很常见,否则 Sybase 建议您将 cluster redundancy level 设 置为 1。
cluster vote timeout |
||
缺省值 |
60 |
|
有效值 |
1– 127 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
共享磁盘集群 |
cluster vote timeout 控制某个实例在投票期间等待其它实例投票的最大时 间量。实例只会等待它认为正在运行的实例。
将 cluster vote timeout 调优为较低的值可缩短故障切换时间,但会增加正 在运行的实例被排除在新集群视图之外的风险。将 cluster vote timeout 调 优为较大的值可减小正在运行的实例被排除在新集群视图之外的风险, 但可能会增加故障切换时间。
column default cache size
摘要信息
缺省值 1024 页 (2MB)
值的范围 128 - 8192(页)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 用户环境
column defult cache size 确定 Adaptive Server 为提供非实现列的缺省对象 而必须在内存中保留的高速缓存大小。
摘要信息
缺省值 4096
值的范围 0 - 2147483647
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 SQL Server 管理
确定用于压缩的内存池的大小。
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 物理内存
在将压缩转储装载到存档数据库时使用。compression memory size 确定 Adaptive Server 用于解压缩压缩转储的内存池的大小(以 2KB 页为单 位)。如果将 compression memory size 设置为 0,则不会创建池,并且无 法装载压缩转储。
请参见《系统管理指南,卷 2》的第 14 章“存档数据库访问”中的“创 建压缩内存池”。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
以下值之一:0、verify、read、write 或 restore |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
一般信息 |
configuration file 指定当前使用的配置文件的位置。有关配置文件的完整 说明,请参见 第 59 页的“将 sp_configure 与配置文件结合使用” 。
在 sp_configure 输出中,“Run Value”列仅显示 10 个字符,因此输出可 能无法显示配置文件的完整路径和名称。
cost of a logical io |
||
摘要信息 |
||
缺省值 |
2 |
|
值的范围 |
0 - 254 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
cost of a logical io 指定单个逻辑 I/O 的开销。
cost of a physical io
摘要信息
缺省值 25
值的范围 0 - 254
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
cost of a phsyical io 指定单个物理 I/O 的开销。
cost of a cpu unit |
||
摘要信息 |
||
缺省值 |
1000 |
|
值的范围 |
1 - 65534 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
cost of a cpu unit 指定单个 CPU 操作的开销。 优化程序中串行计划的开销采用以下公式描述:
Cost = PIO X estimated_pio + LIO X estimated_lio + 100 X estimated_cpu / CPU
其中的各个缺省值为:
• estimated_pio = 25
• estimated_lio = 2
• estimated_cpu = 1000
如果您的 Adaptive Server 有足够的内存,则所有表都将存在于内存中, 并且可以将 cost of a physical io 的值设置为 0。
如果您的 CPU 速度足够快,cost of a cpu unit 的值不是问题,请使用以 下公式来确定 CPU 的开销,该开销包含了 2 个 LIO 和 25 个 PIO(缺 省值):
CPU X 100/configuration_value
configuration_value 的缺省值为 1000。
当您增加 cost of a cpu unit 的值时,此公式将减少 CPU 对开销的影响。
摘要信息
缺省值 200
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
cpu accounting flush interval 以计算机时钟周期(非 Adaptive Server 时钟周 期)为单位,指定 Adaptive Server 等待多长时间后,才将每个用户的 CPU 使用率统计信息从 sysprocesses 刷新到 syslogins(用于收费退回式会计 的一个过程)。
用户登录到 Adaptive Server 后,服务器开始累计 sysprocesses 中此用户 进程的 CPU 使用率。当用户从 Adaptive Server 注销,或超过 cpu accounting flush interval 的值时,累计的 CPU 使用率统计信息从 sysprocesses 刷新到 syslogins。这些统计信息不断在 syslogins 中累计,直至您清除总计为止。 使用 sp_reportstats 显示 syslogins 中的当前总计。
报告运行类型决定了 cpu accounting flush interval 的设置值。如果报告每 月运行一次,则将 cpu accounting flush interval 设置为一个相对高的值。 如果报告运行频率很低,syslogins 中的数据是否经常更新并不重要。
但是,如果对 syslogins 中的 totcpu 列执行定期即席选择以确定进程的 CPU 使用率,请将 cpu accounting flush interval 设置为较低的值,以增加 syslogins 中的数据在您执行选择时保持最新的可能性。
如果将 cpu accounting flush interval 设置为较低的值,将可能导致锁管理 程序错误地将进程识别为潜在死锁牺牲品。当锁管理程序检测到一个死 锁时,它将检查每个争用进程所累积的 CPU 时间。将选择具有较少时 间的进程作为死锁牺牲品,并且锁管理程序终止运行该进程。此外,如 果将 cpu accounting flush interval 设置为较小的值,则会更频繁地初始化 存储进程 CPU 使用率信息的任务处理程序,由此使进程累计的 CPU 时 间看起来比实际少。这样,锁管理程序可能选择某个进程作为死锁牺牲 品,但该进程实际上累积的 CPU 时间比争用进程多。
如果根本不希望报告 CPU 使用率,请将 cpu accounting flush interval 设置 为其最大值。这将减少 syslogins 的更新次数,并减少必须将其页面写入 磁盘的次数。
摘要信息 |
||
缺省值 |
500 |
|
值的范围 |
0–2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
cpu grace time 和 time slice 参数一起使用时可指定:用户进程在被 Adaptive Server 抢占,并因时间片错误而被终止之前,在不放弃 CPU 的情况下可 以运行的最长时间。cpu grace time 的单位是 sql server clock tick length 所定 义的时间周期。请参见 第 232 页的“ sql server clock tick length ”。
当一个进程超过 cpu grace time 时,Adaptive Server 通过将此进程从内部 队列删除来“影响”它。该进程即被注销,而 Adaptive Server 不受影响。 这样可防止失去控制的进程独占 CPU。如果任何用户进程受到影响,可 以通过增加 cpu grace time 的值临时修复此问题。但应确保问题的症结在 于,某个进程的完成时间超过了 cpu grace time 的当前值,而不是某个进 程失去了控制。
临时增大 cpu grace time 的值只是一种变通手段,并非永久性解决方案, 因为它可能会导致新的问题;请参见 第 246 页的“ time slice ”。另外, 有关任务调度的更详细论述,请参见《性能和调优系列:基础知识》中 的第 4 章“使用引擎和 CPU”。
摘要信息 |
||
缺省值 |
1 |
|
值的范围 |
0–8 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统安全员 |
|
配置组 |
与安全性相关的参数 |
current audit table 创建 Adaptive Server 将审计行写入其中的表。系统安全 员可以使用以下语法更改当前审计表:
sp_configure "current audit table", n
[, "with truncate"]
其中 n 是确定当前新审计表的一个整数,如下所述:
• 1 表示 sysaudits_01,2 表示 sysaudits_02,以此类推,最大可为 8。
• 0 通知 Adaptive Server 将当前审计表设置为下一个表。例如,如果 系统中有三个审计表,sysaudits_01、sysaudits_02 和 sysaudits_03, 则 Adaptive Server 会将当前审计表设置为:
• 2,如果当前审计表是 sysaudits_01
• 3,如果当前审计表是 sysaudits_02
• 1,如果当前审计表是 sysaudits_03
"with truncate" 指定 Adaptive Server 应截断尚不为空的新表。如果没有指 定该选项而表又不为空,sp_configure 将失败。
注释 如果 Adaptive Server 截断了当前的审计表,而且您没有将数据存 档,则该表中的审计记录将丢失。确保在使用 with truncate 选项之前将 审计数据存档。
若要执行 sp_configure 以更改当前审计表,sso_role 必须为活动状态。可 以编写一个阈值过程来自动更改当前审计表。
摘要信息
缺省值 500
值的范围 0–2147483
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 锁管理程序
deadlock checking period 指定了在 Adaptive Server 对等待释放一个锁的进 程开始进行死锁检查之前的最小的时间量(以毫秒计)。对于没有遇到 死锁或遇到的死锁很少的应用程序,死锁检查是消耗时间的开销;随着 必须等待一个锁的锁请求百分比的增加,这种开销还会增加。
如果将 deadlock checking period 设置为非零值 ( n ),则在进程至少等待 n 毫 秒后,Adaptive Server 会启动死锁检查。例如,输入如下命令,即可让 进程在执行每一次死锁检查前,至少要针对一个锁等待 700 毫秒:
sp_configure "deadlock checking period", 700
如果将 deadlock checking period 设置为 0,则当每个进程开始等待锁时, Adaptive Server 都会启动死锁检查。任何比一个时钟周期中的毫秒数小 的值都被视为 0 。请参见 第 232 页的“ sql server clock tick length ”。
如果将 deadlock checking period 配置为较大值,则会导致在检测出死锁前 出现更长的延迟。但是,因为在这段时间过去之前 Adaptive Server 会同 意大多数锁请求,所以可以避免对这些锁请求进行开销很高的死锁检查。 如果应用程序死锁不频繁,请将 deadlock checking period 设置为较高的值。 否则,缺省值 500 应已足够。
可以使用 sp_sysmon 来确定系统中死锁的频率,以及 deadlock checking period 的最佳设置。请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
摘要信息
缺省值 0
值的范围 0–1
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、监控
deadlock pipe active 控制 Adaptive Server 是否收集死锁消息。如果同时启 用了 deadlock pipe active 和 deadlock pipe max messages,则 Adaptive Server 收集每个死锁的文本。使用 monDeadLock 来检索这些死锁消息。
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
deadlock pipe max messages 确定 Adaptive Server 存储的每个引擎的死锁 消息数。monSQLText 表中的消息总数等于 sql text pipe max messages 的值 与正在运行的引擎数的乘积。
摘要信息 |
||
缺省值 |
5 |
|
值的范围 |
0–2147483647 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序、SQL Server 管理 |
deadlock retries 指定在索引页面拆分或收缩期间发生死锁时事务能够尝试 获得锁的次数。
• 事务 A 锁定了 1007 页,并且需要在 1009 页上获取一个锁以便为页 面拆分更新页面指针。
• 事务 B 也正在插入一个索引行,该索引行造成页面拆分、持有
1009 页上的锁和需要在 1007 页上获得锁。
在这种情况下,Adaptive Server 并不立刻选择一个进程作为死锁牺牲品, 而是放弃某一事务的索引锁。这样做常常使其它事务完成和释放它的锁。
对于放弃锁定尝试的事务,将从根页起重新扫描索引,然后再次尝试页 面拆分操作,直到达到 deadlock retries 指定的次数为止。
图 5-1:聚簇索引中页拆分期间的死锁
第 1001 页 |
|||
Bennet |
1007 |
||
Karsen |
1009 |
||
Smith |
1062 |
||
第 1007 页 |
|
Bennet |
1132 |
Greane |
1133 |
Hunter |
1127 |
Irons |
1218 |
第 1007 页 |
|
Bennet |
1132 |
Greane |
1133 |
Hunter |
1127 |
Irons |
1218 |
第 1009 页 |
|
Karsen |
1315 |
Lemmon |
1220 |
Perkins |
1257 |
Quigley |
1254 |
第 1009 页 |
|
Karsen |
1315 |
Lemmon |
1220 |
Perkins |
1257 |
Quigley |
1254 |
事务 A:
拆分索引第 1007 页;
持有第 1007 页上的
锁;需要在第 1009 页上获取锁以更新其 前页指针
事务 B:拆分索引 第 1009 页;持有
第 1009 页上的锁;
需要在第 1007 页 上获取锁以更新其 下一页指针
第 1007 页 |
|
Bennet |
1132 |
Greane |
1133 |
Grizley |
1127 |
第 1033 页 |
|
Hunter |
1127 |
Irons |
1218 |
第 1033 页 |
|
Hunter |
1127 |
Irons |
1218 |
第 1009 页 |
|
Karsen |
1315 |
Lemmon |
1220 |
Mouton |
1244 |
第 1009 页 |
|
Karsen |
1315 |
Lemmon |
1220 |
Mouton |
1244 |
第 1044 页 |
|
Perkins |
1257 |
Quigley |
1254 |
第 1044 页 |
|
Perkins |
1257 |
Quigley |
1254 |
sp_sysmon 报告有关死锁和重试的信息。请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列:锁定和并 发控制》)。
摘要信息
缺省值 1
值的范围 0–255
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 语言
default character set id 指定服务器所使用的缺省字符集的编号。缺省值是 在安装时设置的,以后可以使用 Sybase 安装实用程序进行更改。请参见 第 10 章“配置字符集、排序顺序和语言”
摘要信息
缺省值 3MB
值的范围 2 a –10000
a 是由服务器逻辑页大小确定的最小值。
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
default database size 设置在没有任何大小参数的情况下发出 create database 后,在缺省情况下分配给一个新的用户数据库的空间(以兆字节为单 位)。create database 语句中指定的数据库大小优先于此配置参数设置 的值。
如果 Adaptive Server 上大部分的新数据库要求的大小都大于一个逻辑页, 则最好增加缺省值。
注释 如果更改 model 数据库,则必须也增加 default database size 的值, 因为 create database 命令将复制 model 以创建新用户数据库。
摘要信息
缺省值 5
值的范围 0–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
default exp_row_size percent 保留的空间用于 DOL 锁定表中的扩展更新, 目的是减少行转移。“扩展更新”指对数据行进行的增加行长度的任何 更新。允许空值的数据行或包含可变长度列的数据行可能会进行扩展更 新。在 DOL 锁定表中,如果增加数据行的大小以致该页无法继续容纳, 扩展更新会要求行转移。
缺省值为 5,即留出占可用数据页大小 5% 的空间,供扩展更新使用。 由于 DOL 锁定表的页上有 2002 字节可用于数据存储,所以将为扩展保 留 100 字节。该值仅应用于具有长度可变列的表中的页。
将 default exp_row_size percent 设置为 0,意味着所有页都已完全充满, 没有剩余空间可用于扩展更新。
如果没有使用 create table 来明确提供 exp_row_size 或使用 sp_chgattribute 进行设置,则将 default exp_row_size percent 应用于带有可变长度列的 DOL 锁定表。如果使用 create table 提供了一个值,则该值将优先于配置 参数的设置。请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列:锁定和并发控制》)。
摘要信息
缺省值 0
值的范围 0–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
default fill factor percent 确定当 Adaptive Server 对已有数据创建新索引时每 个索引页的充满度,除非 create index 语句中已指定了填充因子。fillfactor 百分比仅在创建了索引后才有意义。随着数据变化,页的填充程度不会 维持任何特定水平。
default fill factor percent 影响:
• 数据使用的存储空间量 — Adaptive Server 创建聚簇索引时重新分配 数据。
• 性能 — 拆分页使用 Adaptive Server 的资源。
通常不需要更改 default fill factor percent,因为可在 create index 命令中覆 盖其值。请参见《参考手册:命令》中的“create index”。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0–32767 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
语言 |
default language id 是用于显示系统消息的语言(除非用户已选择了服务 器上的其它可用语言)的编号。us_english 的 ID 始终为 NULL。其它语 言在添加时都指派了唯一的号码。
摘要信息
缺省值 2048
值的范围 512– 65024
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信、用户环境
default network packet size 为所有 Adaptive Server 用户配置缺省包大小。 可以将 default network packet size 的值设置为 512 字节的任何倍数;不是 512 偶数倍的值将向下舍入。
使用缺省包大小登录的所有用户的内存都是从 Adaptive Server 内存池分 配的,内存池使用 total logical memory 进行设置。Adaptive Server 启动时 分配该内存以用于网络包。
每个 Adaptive Server 用户连接都使用:
• 一个读缓冲
• 一个消息缓冲
• 一个写缓冲
其中的每个缓冲区都需要 default network packet size 字节。分配给网络包 的内存总量是:
(用户连接数 + 工作进程数) * 3 * 缺省网络包大小
例如,如果将 default network packet size 设置为 1024 字节,并且有 50 个 用户连接和 20 个工作进程,则需要的网络内存是:
(50 + 20) * 3 * 1024 = 215040 字节
如果增加 default network packet size,则还必须将 max network packet size 增加到至少与前者一样大。如果 max network packet size 的值大于 default network packet size 的值,则应增大 additional network memory 的值。请参 见 第 72 页的“ additional network memory ”。
可以使用 sp_sysmon 来了解 default network packet size 参数的更改如何影 响网络 I/O 管理和任务切换。例如,尝试增加 default network packet size, 然后检查 sp_sysmon 输出,了解这样的更改如何影响较大批处理的 bcp。 请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
在登录时请求较大的包大小
客户端自动使用 Adaptive Server 缺省包大小。使用 Adaptive Server 客户 端程序的 -A 标志请求较大的包大小。例如:
isql -A2048
摘要信息 |
||
缺省值 |
50 |
|
值的范围 |
0–255 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
语言 |
default sortorder id 是在服务器上作为缺省值安装的排序顺序号。要更改 缺省排序顺序,请参见 第 10 章“配置字符集、排序顺序和语言” 。
摘要信息
缺省值 二进制
值的范围 当前未使用
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Unicode
default unicode sortorder 是一个字符串参数,该参数唯一定义服务器上安 装的缺省 Unicode 排序顺序。要更改 Unicode 缺省排序顺序,请参见
摘要信息
缺省值 二进制
值的范围 (当前未使用)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Unicode
default XML sortorder 是一个字符串参数,该参数定义 XML 引擎使用的排 序顺序。之所以使用字符串参数而非数字参数,目的是为了确保 ID 的唯 一性。请参见《Adaptive Server Enterprise 中的 XML 服务》中的第 6 章 “对 I18N 提供的 XML 支持”。
deferred name resolution
摘要信息
缺省值 0(禁用)
值的范围 0 到 1
Status 动态
要求的角色 系统管理员
配置组 查询调优
如果 deferred name resolution 处于活动状态 (1),则会对所有服务器连接 全局应用延迟名称解析;将使用延迟名称解析创建您在服务器中创建的 所有过程。
因此,将会在不解析存储过程内引用的对象的情况下创建存储过程,从 而将对象解析处理推迟到执行时进行。请参见《Transact-SQL 用户指南》 中的第 17 章“使用存储过程”
disable character set conversions
摘要信息
缺省值 0(启用)
有效值 0(启用),1(禁用)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 语言
将 disable character set conversions 更改为 1 会关闭用于在客户端和 Adaptive Server 之间移动数据的字符集转换功能。缺省情况下,如果客户端与服 务器使用不同的字符集,则 Adaptive Server 会对移入和移出客户端的数 据执行转换。例如,如果有些客户端使用 Latin-1 (iso_1),而 Adaptive Server 使用 Roman-8 (roman8) 作为其缺省字符集,则来自这些客户端的 数据在被装载到 Adaptive Server 时,会被转换为 Roman-8。对于使用 Latin-1 的客户端,数据被发送到客户端时被重新转换;如果客户端使用 的字符集与 Adaptive Server 使用的字符集相同,则不转换数据。
通过设置 disable character set conversions,可以请求不进行转换。例如, 如果所有客户端都使用某个给定字符集,而您希望 Adaptive Server 采用 该字符集存储所有数据,可将 disable character set conversions 设置为 1, 这样就不会发生任何转换。
摘要信息
缺省值 1
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Disk I/O
disable disk mirroring 启用或禁用 Adaptive Server 的磁盘镜像。这是一个全 局变量;Adaptive Server 在该配置参数设置为 1 并重新启动 Adaptive Server 后将不执行任何磁盘镜像操作。将 disable disk mirroring 设置为 0 将 会启用磁盘镜像。
注释 如果针对故障切换配置了 Adaptive Server,则必须禁用磁盘镜像。
disable varbinary truncation
摘要信息
缺省值 0(打开)
值的范围 0(打开),1(关闭)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
disable varbinary truncation 控制 Adaptive Server 是否在 varbinary 或 binary
空数据的结尾包括尾随零。
摘要信息 |
||
缺省值 |
256 |
|
值的范围 |
0–2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
磁盘 I/O、内存使用 |
disk i/o structures 指定 Adaptive Server 在启动时分配的磁盘 I/O 控制块的 初始数目。
在 Adaptive Server 可以启动进程的 I/O 请求之前,用户进程需要一个磁 盘 I/O 控制块。在 Adaptive Server 启动时,预分配用于磁盘 I/O 控制块 的内存。为了最大程度地减少出现磁盘 I/O 结构不够用的情况,您应将 disk i/o structures 配置为操作系统允许的最高值。关于并行磁盘 I/O 的信 息,请参见操作系统文档。
sp_sysmon 确定是否要分配更多的磁盘 I/O 结构。请参见《性能和调优 系列:使用 sp_sysmon 监控 Adaptive Server》。可以将 max async i/os per server 配置参数的值设置为与 disk i/o structures 相同的值。请参见
第 150 页的“ max async i/os per server”。
DMA object pool size
缺省值 4096
有效值 2048 - 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
DMA object pool size 指定 CIPC 在启动时分配的 DMA(直接内存访问) 对象的数目。
摘要信息
缺省值 0(分钟)
有效值 0 - 2147483647(分钟)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理
dtm detach timeout period 设置分布式事务分支可以处于分离状态的时间(以 分钟为单位)。在一些 X/Open XA 环境中,事务可能与它的控制线程 分离(通常会附加到另一个控制线程)。Adaptive Server 允许事务保留 在分离状态的时间长度是由 dtm detach timeout period 指定的。如果超过 此时间,Adaptive Server 将回退分离的事务。
摘要信息
缺省值 300(秒)
有效值 1 - 2147483647(秒)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理
dtm lock timeout period 用于设置:在等待锁定资源变为可用时,一个分布 式事务分支等待的最长时间(以秒为单位)。这段时间过去后, Adaptive Server 认为该事务处于死锁状态,于是回退那些触发了死锁的 事务分支。最终会回退整个分布式事务。
如果分布式事务将事务传播给远程服务器,或远程服务器将事务传播回源 服务器,分布式事务就可能潜在死锁它们本身。 图 5-2 中显示了这种情 况。分布式事务“dxact1”的工作通过“rpc1”传播到 Adaptive Server 2。 然后,Adaptive Server 2 通过“rpc2”将该事务传回协调服务器。“rpc2” 和“dxact1”虽共享相同的 gtrid,但具有不同的分支限定符,因此,它 们不能共享相同的事务资源。如果“rpc2”正在等待“dxact1”持有的 锁,则会发生死锁的情况。
图 5-2:分布式事务死锁
ASE1 |
|
ASTC |
|
c1 |
ASE1 |
|
ASTC |
|
c1 |
dxact1
rp rpc2
ASE2
ASTC
Adaptive Server 无法检测服务器之间的死锁。相反,它依赖于 dtm lock timeout period 。在 图 5-2 中,当 dtm lock timeout period 到期后,为“rpc2” 创建的事务即会中止。这会使 Adaptive Server 2 报告其工作失败,并且 “dxact1”最终也会被完全中止。
dtm lock timeout period 的值仅适用于分布式事务。本地事务可以使用通过 全服务器范围内的 lock wait period 参数设置的锁定超时期限。
注释 Adaptive Server 不使用 dtm lock timeout period 来检测系统表上的 死锁。
|
||
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
组诊断 |
dump on conditions 确定 Adaptive Server 在遇到 maximum dump conditions 中 指定的条件时是否在共享内存中生成数据的转储。
注释 dump on conditions 参数仅供 Sybase 技术支持部门使用。除非有
Sybase 技术支持部门的指导,否则不要修改此参数。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、物理内存
dynamic allocation on demand 确定何时针对动态内存配置参数的更改分配 内存。
如果 dynamic allocation on demand 设置为 1,则只在需要时分配内存。这 意味着,如果将 number of user connections 的配置从 100 更改为 200,则 只在用户连接到服务器时才为每一用户增加内存。Adaptive Server 持续 增加内存,直到达到用于用户连接的新的最大值。
如果 dynamic allocation on demand 设置为 0,则立即分配任何动态配置更 改所需的所有内存。即,如果将用户连接数从 100 更改为 200,则立即 分配这额外 100 个用户连接所需的内存。
enable backupserver HA
缺省值 1
有效值 0(启用),1(禁用)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
将 enable backupserver HA 设置为 1 将会为集群启动高可用性 Backup Server。将 enbale backupserver HA 设置为 0 则会在集群上禁用高可用性 Backup Server。
摘要信息 |
||
缺省值 |
1(打开) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
enable cis 启用或禁用组件集成服务。
enable compression
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
enable cis 启用或禁用数据压缩。请参见 Compression Users Guide(《压 缩用户指南》)。
enable console logging
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 SQL Server 管理
enable console logging 确定 Adaptive Server 是否向主控台发送消息。缺省 情况下,将禁用 enable console logging,启动后,Adaptive Server 不向主 控台发送任何消息(仍向错误日志发送消息)。启用后,enable console logging 允许 Adaptive Server 始终向主控台和错误日志发送消息。
摘要信息 |
||
缺省值 |
0(关闭) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
静态 |
|
显示级别 |
10 |
|
要求的角色 |
系统管理员 |
|
配置组 |
DTM 管理、SQL Server 管理 |
enable DTM 启用或禁用 Adaptive Server 分布式事务管理 (DTM) 功能。如 果启用了 DTM,则可以使用 Adaptive Server 作为 X/Open XA 和 MSDTC 系统中的资源管理器。必须重新启动服务器以使此参数生效。有关在 X/Open XA 环境中使用 Adaptive Server 的详细信息,请参见《 CICS、 Encina 和 TUXEDO 的 XA 接口集成指南》。有关 MSDTC 环境中的事务 的信息以及有关 Adaptive Server 本机事务协调服务的信息,请参见“使 用 Adaptive Server 分布式事务管理功能”。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 与安全性相关的参数
enable encrypted columns 启用加密列。
除非您购买并在服务器上安装和注册了 ASE_ENCRYPTION 许可证,否 则将无法设置 enable encrypted columns。任何尝试在没有此类许可的情况 下设置该参数的行为都将导致出现消息 10834:
Configuration parameter 'enable encrypted columns' cannot be enabled without license 'ASE_ENCRYPTION'
注释 使用加密列会将使用的逻辑内存增加 8198 千字节。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Java 服务
enable enterprise java beans 启用和禁用 Adaptive Server 数据库中的 EJB Server。除非 Adaptive Server 启用 EJB 服务器,否则不能使用 EJB 服 务器。
摘要信息 |
||
缺省值 |
1(打开) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
组件集成服务 |
enable file access 启用通过代理表访问外部文件系统。需要 ASE_XFS 的 许可证。
enable full-text search
摘要信息
缺省值 1
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 组件集成服务
enable full-text search 启用增强型全文本搜索服务。需要 ASE_EFTS 的许 可证。
enable functionality group
摘要信息
缺省值 0
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
enable functionality group 用于在 Adaptive Server 15.7 和更高版本中启用或 禁用可用于以下功能的更改:
• 可共享行内缺省值 — 将 enable functionality group 设置为 0 时,Adaptive Server 不创建可共享行内缺省值,也不重用现有的可共享行内缺省 值。共享行内缺省值(在更改此配置参数之前)的列将继续共享缺 省值,直到删除缺省值。
• 获得排它锁的 select for update
• 带引号的标识符
• Unicode 非字符
• 监控游标语句
• 降低查询处理延迟
• 禁止 Job Scheduler max task 消息
此组中参数的缺省值取决于为 enable functionality group 设置的值。此组 中除 enable functionality group 之外的各个配置参数的 DEFAULT 值将设置 为与 enable functionality group 相同。也就是说,如果将 enable functionality group 设置为 1,则此组中其它任何配置参数的 DEFAULT 值均为 1。
除 enable functionality group 的值之外,您可以在 sp_configure 和 sp_helpconfig 的输出中针对应用程序功能组中的各个配置参数忽略 DEFAULT 值。
enable inline default sharing
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 应用程序功能
enable inline default sharing 使 Adaptive Server 可以共享行内缺省值。也就是 说,启用此配置后,Adaptive Server 会在属于同一用户的数据库中查找具 有相同值的现有可共享行内缺省值。如果 Adaptive Server 找到现有可共享 缺省值,它会将该对象绑定到列上,而不是创建新的缺省值。但如果 Adaptive Server 找不到现有可共享行内缺省值,它就会创建新的缺省值
请参见《Transact-SQL 用户指南》中的“为数据定义缺省值和规则”。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0 - 2 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
将 enable HA 设置为 1,以将 Adaptive Server 配置为主动-主动高可用性子 系统中的协同服务器。将 enable HA 设置为 2,可将 Adaptive Server 配置 为主动-被动高可用性子系统中的协同服务器。
Adaptive Server 使用 Sybase 故障切换与高可用性子系统进行交互。必须 先将 enable HA 设置为 1,然后才能运行 installhasvss 脚本(在 Windows 上为 insthasv),此脚本会安装用于 Sybase 故障切换的系统过程。
注释 许可证信息和 enable HA 的运行值是相互独立的。无论是否有 Sybase 故障切换许可证,在重新启动 Adaptive Server 后,运行值和配置值都将 设置为 1。除非有许可证,否则无法运行 Sybase 故障切换。如果您没有安 装有效的许可证,则 Adaptive Server 将记录一条错误消息,并且不会激 活该功能。有关安装许可证密钥的信息,请参见所用平台的安装指南。
将 enable HA 设置为 1 或 2 并不意味着 Adaptive Server 已配置为可在高 可用性系统中工作。必须执行“在高可用性系统中使用 Sybase 故障切 换”中所述的步骤,才可将 Adaptive Server 配置为高可用性系统中的协 同服务器。
当 enable HA 设置为 0 时,不能进行 Sybase 故障切换配置,也不能运行
installhasvss(在 Windows 上为 insthasv)。
摘要信息
缺省值 1(打开)
值的范围 0 - 5
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
管家碎片收集任务在 DOL 锁定表上执行空间回收操作。如果用户任务 将行从 DOL 锁定表中删除,则为管家安排一个任务以检查数据和索引 页上提交的删除。
管家碎片收集任务由 enable housekeeper GC 控制。请参见《性能和调优 系列:基础知识》中的第 3 章“使用引擎和 CPU”。
enable housekeeper GC 的有效值如下:
• 0 — 禁用管家碎片收集任务,但启用 delete 命令的消极碎片收集。 必须使用 reorg reclaim_space 释放空页。这是消耗最少的选项,而且 对性能的影响也最小,但如果出现许多空白页累计的情况,则可能 会导致性能问题。Sybase 建议您不要使用此值。
• 1 — 为管家碎片收集任务和 delete 命令启用消极碎片收集。如果累计 的空白页数超过了应用程序所允许的数量,应考虑使用选项 4 或 5。 可以使用 optdiag 实用程序获取空白页统计信息。
• 2 — 留作将来使用。
• 3 — 留作将来使用。
• 4 — 为管家碎片收集任务和 delete 命令启用积极碎片收集。此选项 效率最高,但 delete 命令会消耗很多资源。如果 DOL 锁定表上的删 除操作在一个批处理中,此选项最为理想。
• 5 — 为管家启用积极碎片收集,并为 delete 命令启用消极碎片收集。 对于删除操作,此选项比选项 4 消耗的资源少。此选项适用于并行 事务导致删除操作的情况。
sp_sysmon 报告管家碎片收集任务执行空间回收的频率以及回收的页数。 请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
enable hp posix async i/o
摘要信息
缺省值 0
有效值 0(启用),1(禁用)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Disk I/O
将 enable hp posix async i/o 设置为 1 可对在 HP-UX 11.31 和更高版本文件 系统中创建的数据库设备启用异步 I/O。必须先用 allow sql server async i/o 配置参数使 Adaptive Server 可以使用异步 I/O。
这些配置参数的组合确定 Adaptive Server 对于原始分区和文件系统使用 异步还是同步 I/O:
enable hp posix async i/o |
allow sql server async i/o = 0 |
allow sql server async i/o = 1 |
设置为 0 |
对文件系统使用同步 I/O 对原始设备使用同步 I/O |
对文件系统使用同步 I/O 对原始设备使用 /dev/async 异步 I/O |
设置为 1 |
对文件系统使用同步 I/O 对原始设备使用同步 I/O |
对文件系统使用 POSIX 异步 I/O 对原始设备使用 POSIX 异步 I/O |
注释 当您在文件系统中分配数据库设备时,enable hp posix async i/o 可 以提高性能,但在原始设备上分配的数据库设备中,它可能会降低性能。
enable i/o fencing |
||
缺省值 |
0 |
|
有效值 |
0(启用),1(禁用) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
共享磁盘集群 |
如果将 enable i/o fencing 设置为 1,则会为支持 SCSI-3 持久组保留 (PGR)
标准的每个数据库设备启用 I/O 防护。
摘要信息 |
||
缺省值 |
0(禁用) |
|
值的范围 |
0(禁用),1(启用) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Java 服务 |
enable java 在 Adaptive Server 数据库启用和禁用 Java。只有在服务器中 启用了 Java 时,才能安装 Java 类或执行任何 Java 操作。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
enable job scheduler 确定当 Adaptive Server 启动时,是否启动 Job Scheduler。
摘要信息
缺省值 0(关闭)
有效值 0(关闭)— 只允许 syslogins 鉴定。 1(打开)— 允许 LDAP 和 syslogins 鉴定。 2(打开)— 只允许 LDAP 鉴定。
Status 动态
显示级别 Comprehensive
要求的角色 系统安全员
配置组 与安全性相关的参数
当 enable ldap user auth 为 1 时,Adaptive Server 将搜索 LDAP 服务器以 便对每个用户进行鉴定。如果 LDAP 鉴定失败,Adaptive Server 将搜索 syslogins 以对该用户进行鉴定。当您将用户从 Adaptive Server 鉴定迁移 到 LDAP 鉴定时,请使用级别 1。
enable literal autoparam
摘要信息
缺省值 0
值的范围 0(启用),1(禁用)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 Query Tuning
enable literal autoparam 在全服务器范围内启用和禁用文字参数化。
摘要信息
缺省值 1
值的范围 0(启用),1(禁用)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 与安全性相关的参数
enable logins during recovery 确定在数据库恢复过程中是否允许使用非系 统管理员登录。值 1 表示在恢复过程中允许使用这些登录,值 0 表示在 恢复过程中不允许使用这些登录(也就是说,只有系统管理员才能登录 到 Adaptive Server)。
enable merge join
摘要信息
缺省值 2
值的范围 0 — 在服务器级禁用合并连接。
1 — 在服务器级启用合并连接。
2 — 在服务器级将合并连接设置为其缺省值。
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
enable merge join 可在服务器级别启用或禁用合并连接。 合并连接的缺省值取决于 optimization goal 配置参数的当前值: optimization goal 的值 合并连接的缺省值
allrows_mix 打开
allrows_dss 打开
allrows_oltp 关闭
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
enable metrics capture 使 Adaptive Server 能够在服务器级别捕获指标。即 席语句的指标会被捕获到系统目录中;存储过程中的语句的指标则保存 在过程高速缓存中。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
监控 |
enable monitoring 控制 Adaptive Server 是否收集监控表数据。enable monitoring 充当主开关,用于确定是否启用任何监控配置参数。
注释 在未启用 enable monitoring 的情况下填充监控表的任何数据均应 视为无效。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭)— 只允许 syslogins 鉴定。 1(打开)— 允许 PAM 和 syslogins 鉴定。 2(打开)— 只允许 PAM 鉴定。
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
enable pam user auth 控制是否使用可插入鉴定模块 (PAM) 鉴定用户。
当 enable pam user auth 设置为 1 时,Adaptive Server 使用 PAM 提供程序 鉴定每一个用户。如果 PAM 鉴定失败,Adaptive Server 将搜索 syslogins 以对该用户进行鉴定。当您将用户从 Adaptive Server 鉴定迁移到 PAM 鉴定时,请使用级别 1。
enable pci
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开),2(打开,但操作系统设 置优先)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 用户环境
enable pci 为 Adaptive Server 启用或禁用 Java PCI Bridge。
注释 除非 Sybase 技术支持部门指示您这么做,否则不要使用设置“2”
(打开,但操作系统设置优先)。此设置将在可能不完全或正确支持
PCI 功能的操作系统版本上启用 PCI Bridge。
enable permissive unicode
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 应用程序功能
enable inline default sharing 允许 Adaptive Server 忽略 Unicode 非字符。 请参见 第 336 页的“允许 Unicode 非字符”。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
摘要信息
要求的角色 系统管理员
配置组 Query Tuning
enable query tuning mem limit 启用查询调优内存限制。
enable query tuning time limit
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status Intermediate
显示级别 Intermediate
要求的角色 系统管理员
配置组 Query Tuning
enable query tuning time limit 启用查询调优时间限制。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
enable real time messaging 启用实时消息传送服务。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Basic
摘要信息
要求的角色 系统管理员
配置组 内存使用、RepAgent 线程管理
enable rep agent threads 启用 Adaptive Server 内的 RepAgent 线程。 其它步骤也要求启用复制。有关详细信息,请参见 Replication Server
文档。
enable row level access control
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统安全员
配置组 与安全性相关的参数
enable row level access control 启用行级访问控制。启用安全服务许可证密 钥后,才能配置 enable row level access control。
摘要信息
缺省值 0
值的范围 0(启用),1(禁用)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
enable semantic partitioning 在 Adaptive Server 中启用非循环分区(如列表 分区、散列分区和域分区)。要想使用这些分区方案,必须首先获得相 应的许可证。
enable sort-merge join and JTC
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
在 Adaptive Server 处于兼容模式时使用。启用后,当 Adaptive Server 在 兼容模式下编译查询时,enable sort-merge join and JTC 允许查询处理器选 择 sort merge 或 nested loop join。enable sort-merge join and JTC 启用连接 传递闭包 (JTC),从而使 15.0 之前的版本的查询处理器能够使用其它连 接子句。
有关兼容模式的详细信息,请参见《迁移技术指南》。
enable sql debugger
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
启用和禁用使您能够逐步调试 T-SQL 代码的 Adaptive Server SQL 调试 程序。
摘要信息 |
||
缺省值 |
0(关闭) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统安全员 |
|
配置组 |
与安全性相关的参数 |
enable ssl 启用或禁用基于安全套接字层会话的安全性。
enable stmt cache monitoring
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理
配置组 监控
enable stmt cache monitoring 允许或禁止 Adaptive Server 收集有关语句高 速缓存的监控信息。启用后,monStatementCache 和 monCachedStatement 将显示有效数据。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Unicode
激活处理并保持 Unicode 数据中代理对的完整性。如果禁用 enable surrogate processing,服务器将忽略 Unicode 数据中存在的代理对,并且 所有保持代理对完整性的代码都将被忽略。这可提高性能,但会限制可 在数据中出现的 Unicode 字符范围。
摘要信息
缺省值 1
值的范围 0 — 仅使用内置字符集转换。
1 — 使用内置转换。如果找不到内置转换,
Adaptive Server 将使用 Unilib 字符转换
2 — 使用适当的 Unilib 转换
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 语言、Unicode
enable unicode conversion 为 char、varchar 和 text 数据类型激活使用 Unilib
的字符转换。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Unicode
激活 Unilib 字符规范化。规范化进程修改数据,以使得对于给定顺序的 抽象字符,在数据库中只有唯一的表示方法。一般情况下,后跟组合读 音符的字符会被预组合形式所取代。
将 enable unicode normalization 设置为 1 可使用将强制对所有传入 Unicode 数据进行规范化的内置进程。如果该参数被禁用(设置为 0),规范化 步骤将被忽略,并由客户端代码而不是服务器负责规范化。如果禁用规 范化,所有 客户端必须都使用相同的表示方法向服务器提供 Unicode 数 据,性能才会有所提高。
注释 禁用规范化后,不可重新启用。此限制可防止非规范化数据进入 数据库。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0(启用),1(禁用) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
启用 Web 服务。
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 静态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理
enable xact coordination 启用或禁用 Adaptive Server 事务协调服务。此参 数设置为 1(打开)时就启用了协调服务,服务器能够将事务传播到其 它 Adaptive Server。在事务执行远程过程调用 (RPC) 以更新另一个服务 器中的数据时,或者事务使用组件集成服务 (CIS) 更新另一个服务器中 的数据时,就可能发生此情况。事务协调服务确保对远程 Adaptive Server 数据的更新能够随原始事务提交或通过原始事务回退。
如果该参数设置为 0(关闭),Adaptive Server 就不调整远程服务器的 工作。虽然事务仍然能够使用 CIS 执行 RPC 和更新数据,但是 Adaptive Server 不能确保在远程服务器发生系统故障时,远程事务还能通过原始 事务进行回退或远程工作能够和原始事务一起提交。这与 Adaptive Server 12.x 之前的版本的行为一致。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0(启用),1(禁用) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
启用 XML 服务。
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 要求的角色
配置组 物理内存
engine memory log size 只用于诊断目的,在生产环境中没有用。除非
Sybase 技术支持部门另有要求,否则应将此参数保留为缺省设置。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0–1 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
监控 |
errorlog pipe active 控制 Adaptive Server 是否收集错误日志消息。如果同 时启用 errorlog pipe active 和 errorlog pipe max messages,则 Adaptive Server 将收集发送到错误日志的所有消息。使用 monErrorLog 可检索这 些错误日志消息。
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、监控
errorlog pipe max messages 确定 Adaptive Server 存储的每个引擎的错误日 志消息数。monSQLText 表中的消息总数等于 sql text pipe max messages 的 值与正在运行的引擎数的乘积。
摘要信息
缺省值 8
值的范围 0–15
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 扩展存储过程
esp execution priority 设置执行 ESP 的 XP Server 线程的优先级。ESP 会长 时间大量占用 CPU。此外,因为 XP Server 与 Adaptive Server 位于同一 计算机上,所以 XP Server 可能会影响 Adaptive Server 的性能。
有关安排 Open Server 线程的信息,请参见《Open Server Server-Library/C
参考手册》。
摘要信息
缺省值 因平台而异:
• 196608 — Linux AMD-64、IBM PLinux、HP IA64、Sun x86 64
• 139264 — SunSparc64
• 65536 — Sun Sparc32、Windows 32、IBM AIX 64、Linux IA 32、Windows 64
• 67584 — HP 64
值的范围 平台缺省 — 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 扩展存储过程
esp execution stacksize 设置要为 ESP 执行分配的堆栈的大小(以字节为 单位)。
如果有自己的 ESP 函数并且要求的堆栈尺寸比缺省值 34816 大,则可以 使用该参数。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
扩展存储过程 |
esp unload dll 指定在 ESP 调用完成后,是否应从 XP Server 内存中自动卸 载支持 ESP 的 DLL。
如果将 esp unload dll 设置为 0,则不会自动卸载 DLL。如果设置为 1,则 自动进行卸载。
如果将 esp unload dll 设置为 0,仍然可以在运行期间使用 sp_freedll 显式 卸载单个 DLL。
摘要信息
缺省值 100
值的范围 1 - 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
event buffers per engine 指定每个引擎可以使用的事件缓冲区数。
Adaptive Server Monitor 用事件来观测 Adaptive Server 的性能;如果未使 用 Adaptive Server Monitor,将此设置参数为 1。
配置中的引擎数、Adaptive Server 上的活动级别以及正在运行的应用程 序的类型共同决定应设置的 event buffers per engine 值。
将 event buffers per engine 设置为较小的值可能导致事件信息丢失。缺省 值对于大多数节点而言可能太低。对于常规监控,设置为 2000 或更大的 值可能更合理。但是,请进行试验以确定对自己节点合适的值。
一般情况下,将 event buffers per engine 设置为较大的值可减少 Adaptive Server Monitor 引起的 Adaptive Server 性能下降。
每个事件缓冲区使用 100 字节的内存空间。若要确定由 event buffers per engine 的特定值使用的总内存量,请将配置中的 Adaptive Server 引擎数 乘以此参数的值。
event log computer name (仅限 Windows)
摘要信息
缺省值 LocalSystem
有效值 • 网络中配置为记录 Adaptive Server 消息的
Windows 计算机的名称
• LocalSystem
• NULL
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 错误日志
event log computer name 指定在其 Windows 事件日志中记录 Adaptive Server 消息的 Windows PC 的名称。仅 Windows 服务器提供该功能。
值 LocalSystem 或 NULL 指定缺省本地系统。
还可以使用 Server Config 实用程序来设置 event log computer name 参数, 方法是指定“事件记录”下的“事件日志计算机名”。
通过 sp_configure 设置 event log computer name 参数或指定“事件记录” 下的“事件日志计算机名”,将会覆盖命令行 -G 选项的作用(如果指 定了该选项)。如果 Adaptive Server 是使用 -G 选项启动的,则可以通 过设置 event log computer name 来更改目标远程计算机。
有关将 Adaptive Server 消息记录到远程节点的详细信息,请参见《适用 于 Windows 的配置指南》。
event logging (仅限 Windows)
摘要信息
缺省值 1
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 错误日志
event logging 可以控制是否允许将 Adaptive Server 消息记录到 Windows
事件日志中。
缺省值为 1,表示允许将 Adaptive Server 消息记录到 Windows 事件日志 中;值为 0 时,表示不允许这样做。
用 Server Config 实用程序来设置 event logging 参数,方法是选择“事件 记录”下的“使用 Windows 事件记录”。
设置 event logging 参数或选择“使用 Windows 事件记录”会覆盖命令行 选项 -G 的作用(如果指定了该选项)。
executable codesize + overhead
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 已计算
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用
executable codesize + overhead 报告 Adaptive Server 可执行代码与开销的 组合大小(以千字节为单位)。此值是通过计算得出的,用户无法对其 进行配置。
摘要信息
缺省值 0
值的范围 0 - 31457280
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 高速缓存管理器
extended cache size 指定辅助高速缓存的大小。
FIPS login password encryption
摘要信息
缺省值 0
值的范围 0 - 1
Status 静态
显示级别 Comprehensive
要求的角色 系统安全员
配置组 与安全性相关的参数
需要有安全和目录服务许可证才能启用 FIPS login password encryption。 此参数提供 FIPS 140-2 加密模块支持,用于对传输中、内存中和磁盘上 的口令进行加密。
Adaptive Server 使用 FIPS 140-2 认证的 Certicom 安全提供程序进行登录 加密。如果未启用此配置,Adaptive Server 将使用 OpenSSL 安全提供程 序来执行登录口令加密。
摘要信息
缺省值 10
值的范围 0–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 高速缓存管理器
global async prefetch limit 指定一个可以容纳由异步预取引入且尚未被读取 的页的缓冲池百分比。该参数将为没有使用 sp_poolconfig 显式设置此限 制的所有高速缓存中的所有池设置此限制。
如果超过了池的限制,则异步预取暂停使用,直到未读取页的百分比 下降到限制值以下。请参见《性能和调优系列:基础知识》中的第 6 章 “调优异步预取”。
摘要信息
缺省值 1
值的范围 1–64,2 的乘方
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 高速缓存管理器
global cache partition number 为所有数据高速缓存设置缺省的高速缓存分 区数值。可以使用 sp_cacheconfig 为特定高速缓存设置分区数目;本地 值优先于全局值。
使用高速缓存分区来减少高速缓存螺旋锁争用;一般来说,如果螺旋锁 争用超过 10%,则对高速缓存进行分区应会改善性能。如果分区数增加 一倍,则使螺旋锁争用减少大约一半。
有关配置高速缓存分区的信息,请参见《系统管理指南,卷 2》中的第 4 章“配置数据高速缓存”。另请参见《性能和调优系列:基础知识》
中的第 6 章“调优异步预取”。
摘要信息
缺省值 4K
有效值 0 - 2147483647 字节
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、物理内存
heap memory per user 配置每个用户的堆内存量。堆内存池是启动时创建 的内部内存,任务根据需要用它来动态分配内存。如果运行使用宽列的 任务,它需要使用堆栈中的大量内存,此时内存池就显得非常重要。堆 内存分配临时缓冲区,以使这些宽列任务顺利完成。任务结束后,任务 所用的堆内存返回堆内存池中。
内存池的大小取决于用户的连接数。Sybase 建议将 heap memory per user
设置为逻辑页大小的三倍。
摘要信息
缺省值 20
值的范围 1 - 100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
histogram tuning factor 控制 Adaptive Server 分析 update statistics、update index statistics、update all statistics 和 create index 的每个直方图的梯级数。 如果值为 1,则禁用该参数。
注释 对于 Adaptive Server 版本 15.0.2 ESD #2 和更高版本,如果将 histogram tuning factor 设置为缺省值 20,并且为直方图请求大量梯极数, 则用于直方图的实际梯级计数限制为可减少过程高速缓存使用量的值:
min (max (400, requested_steps), histogram_tuning_factor X requested_steps)
在下例中,Adaptive Server 用 30 个值生成了一个中等 20 梯级的直方图:
sp_configure 'histogram tuning factor',20 update statistics tab using 30 values
Adaptive Server 分析此直方图并根据以下参数将其压缩到最终生成的直 方图中:
• 第一梯级原样复制。
• 高频率梯级原样复制。
• 连续范围梯级被折叠到最终生成的梯级中,从而折叠梯级的总权值 不会超过值的三十分之一。
sysstatistics 中的最终直方图:
• 用类似于 30 梯级 update statistics 的方式生成范围梯级,并且高频率 范围被隔离(如同直方图是用 600 梯级创建的一样)。
• 最终生成的直方图中的梯级总数可能从 30 到 600 个值不等。
• 对于等量分布的数据,该值应该很接近 30。
• 表中的“高频”值越多,表示直方图中的梯级越多。
• 如果某一列上不同的值很少,则所有这些值可能都显示为高频率 单元。
可通过将 number of histogram steps 增加到 600 来实现相同的效果,但这 样做会占用缓冲区和过程高速缓存中的更多资源
histogram tuning factor 最大限度地降低直方图所消耗的资源,仅当最有利 于优化时才增加资源的使用量。例如,某列中存在数据的不一致分布, 或某列中包含高重复值时。在这种情况下,最多可使用 600 个直方图梯 级。但是,在大多数情况下,histogram tuning factor 使用缺省值(上例中 为 30)。
housekeeper free write percent
摘要信息
缺省值 1
值的范围 0–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
housekeeper free write percent 指定管家清洗任务可以增加数据库写入的最 大百分比。
例如,若要在数据库写入的频率超过正常值 5% 时停止运行管家任务, 可将 housekeeper free write percent 设置为 5。
当 Adaptive Server 没有要处理的用户任务时,管家清洗任务会自动开始 将高速缓存中已更改的页写入磁盘。这种写入可提高 CPU 的利用率, 降低事务处理期间缓冲区冲洗的需要,并可缩短检查点。
在反复更新同一数据库页的应用程序中,管家清洗可能会启动一些不必 要的数据库写入。尽管这些写入操作只发生在服务器空闲周期,但在有 过载磁盘的系统上可能不会被接受。
用于优化查询的表和索引的统计信息在查询处理期间保留在内存结构中。 当这些统计信息更改时,这些更改不会立即被写到 systabstats 表中,以 减少 I/O 争用并改善性能。而是由管家杂事任务定期将统计信息刷新到 磁盘。
此缺省值允许管家清洗任务增加最大为 1% 的磁盘 I/O。这可使大多数 系统性能提高,恢复速度加快。
若要禁用管家清洗任务,请将 housekeeper free write percent 的值设置为 0。
仅当系统的磁盘争用很严重,并且系统无法容纳管家清洗任务所产生的 额外 I/O 时,才能将此值设置为 0。
如果禁用管家任务,则应让统计信息保持最新状态。向磁盘中写入统计 信息的命令为:
• update statistics
• dbcc checkdb(用于数据库中的所有表)或 dbcc checktable(用于单 个表)
• sp_flushstats
请在以下时间,在自上次将统计信息写入磁盘后更新的所有表上,运行 上述命令之一:
• 转储数据库之前
• 按顺序关闭之前
• 在出现故障或按顺序关闭并重新启动之后;在这些情况下,不能使 用 sp_flushstats,而必须使用 update statistics 或 dbcc 命令
• 对表做重大更改(例如大批量复制操作、变更锁定方案、删除或插 入大量行或执行 truncate table 命令)之后
若要允许管家清洗任务连续工作,而不考虑附加数据库写入的百分比, 可将 housekeeper free write percent 设置为 100。
可使用 sp_sysmon 监控管家的性能。请参见《性能和调优系列:使用
sp_sysmon 监控 Adaptive Server》。
您或许还想查看由管家任务启动的自由检查点的数目。《性能和调优系 列:基础知识》介绍了此输出。
摘要信息
缺省值 1000
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
i/o accounting flush interval 以计算机时钟周期为单位,指定 Adaptive Server 等待多长时间后,才将每个用户的 I/O 统计信息从 sysprocesses 刷新到 syslogins。此参数用于收费退回式会计。
用户登录到 Adaptive Server 后,服务器在 sysprocesses 中开始累计此用 户进程的 I/O 统计信息。在超过 i/o accounting statistics interval 的值或用户 从 Adaptive Server 注销时,此用户的累计 I/O 统计信息将从 sysprocesses 刷新到 syslogins。这些统计信息不断在 syslogins 中累计,直到使用 sp_clearstats 将总和清除为止。可以使用 sp_reportstats 来显示 syslogins 的 当前总和。
报告运行类型决定了 i/o accounting flush interval 的设置值。如果报告每月 运行一次,则将 i/o accounting flush interval 设置为一个相对高的值。如果 报告运行频率很低,syslogins 中的数据是否经常更新并不重要。
如果对 totio 列 syslogins 定期执行即席选择以确定进程的 I/O 量,可将 i/o accounting flush interval 设置为一个较小的值。这样做会增加 syslogins 中 的数据在您执行选择时保持最新的可能性。
如果根本不报告 I/O 统计信息,则应将 i/o accounting flush interval 设置为 最大值。这将减少 syslogins 的更新次数,以及必须将其页面写入磁盘的 次数。
摘要信息 |
||
缺省值 |
100 |
|
值的范围 |
1–2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
i/o batch size 设置任务在开始休眠前,一个批处理发出的写操作数。一旦该 批处理完成,任务便会苏醒过来,然后就发出下一批写操作,这样就能确 保 I/O 子系统不会被大量同时进行的写操作充满。将 i/o batch size 设置为适 当的值可以提高 checkpoint、dump database、select into 等操作的性能。
摘要信息
缺省值 10
值的范围 1 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
注释 仅当将 Adaptive Server 配置用于进程内核模式时,i/o polling process count 才起作用;它在线程内核模式下不起作用。
i/o polling process count 指定在调度程序检查磁盘和网络 I/O 的完成情况之 前,Adaptive Server 可以运行的最多进程数。调整 i/o polling process count 的值会影响 Adaptive Server 的响应时间和吞吐量。
Adaptive Server 检查磁盘或网络 I/O 的完成情况:
• 如果自从上次 Adaptive Server 检查 I/O 的完成情况以后运行的任务 数与 i/o polling process count 的值相等,以及
• 在每一 Adaptive Server 时钟周期。
一般情况下,如果增大 i/o polling process count 的值,就会增加那些生成 大量磁盘和网络 I/O 的应用程序的吞吐量。相反,如果降低该值,则会 改善这些应用程序的进程响应时间,但可能会导致吞吐量降低。
如果应用程序创建的任务既是 I/O 密集型又是 CPU 密集型,则将 i/o polling process count 调整为较小的值 (1-2) 可确保 I/O 密集型任务能够访 问 CPU 周期。
对于 OLTP 应用程序(或任何有用户连接和短事务的 I/O 密集型应用程 序),将 i/o polling process count 调整为一个介于 20-30 范围内的值可以 增加吞吐量,但这样也可能会延长响应时间。
在调整 i/o polling process count 时,还应考虑以下三个参数:
• sql server closk tick length ,它指定 Adaptive Server 时钟周期的持续时 间(以微秒为单位)。请参见 第 232 页的“ sql server clock tick length ” 。
• time slice ,它指定 Adaptive Server 调度程序允许用户进程运行的时 钟周期数。请参见 第 246 页的“ time slice ” 。
• cpu grace time ,它指定在 Adaptive Server 抢占并通过一个时间片错 误终止用户进程之前,该用户进程可以运行而不会放弃 CPU 的最长 时间(以时钟周期为单位)。请参见 第 92 页的“ cpu grace time ” 。
使用 sp_sysmon 可确定更改 i/o polling process count 所产生的效果。请参 见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
摘要信息
缺省值 5000
值的范围 1–9999999
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
IDENTITY 列是 numeric 类型,标度为零,其值由 Adaptive Server 生成。 列值介于最小值 1 和列精度确定的值之间。
对于每个带有 IDENTITY 列的表,Adaptive Server 将可能的列值组分成 数值连续的几块,并在内存中一次使一块可用。每次向表中插入一行时, Adaptive Server 从块中将下一个可用值分配给 IDENTITY 列。当一个块 中的所有数值都已被使用时,下一块变得可用。
这种选择 IDENTITY 列值的方法可提高服务器性能。当 Adaptive Server 分配一个新列值时,它从内存中读取当前最大值,然后加 1。仅当块中 的所有值都已被使用后,才需要访问磁盘。由于在出现服务器故障(或 shutdown with nowait)时块中的所有剩余数值都将被丢弃,因此,此方法 可能导致 IDENTITY 列值出现中断。
可使用 identity burning set factor 更改每个块中可用的潜在列值的百分比。 为保证良好的性能,此值应足够高,但又不应高到使列值的中断大到不 可接受的地步。此参数的缺省值为 5000,即每次释放 0.05% 的可能 IDENTITY 列值以供使用。
若要得到 sp_configure 的正确值,请以小数形式表示此百分比,然后乘 以 10 7 (10,000,000)。例如,若要每次释放 15% (.15) 的可能 IDENTITY 列值,在 sp_configure 中指定的值应为 .15 乘以 10 7(即 1,500,000)。
摘要信息 |
||
缺省值 |
1 |
|
值的范围 |
1–2147483647 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
identity grab size 允许每个 Adaptive Server 进程保留一个 IDENTITY 列值 块,用来插入到具有 IDENTITY 列的表中。
如果您正在执行插入操作,并且想让所有插入的数据具有连续的 IDENTITY 号,它就很有用。例如,如果正在输入 payroll 的数据,并希 望特定部门的所有记录的行都在同一块中,则可将 identity grab size 设置 为该部门的记录数。
identity grab size 适用于 Adaptive Server 上的所有用户。如果设置较大的 identity grab size 值,在许多用户向具有 IDENTITY 列的表中插入数据时, 会导致 IDENTITY 列中出现较大的中断。
Sybase 建议您将 identity grab size 值设置得足够大,以便能够容纳要插入 到连续行中的最大记录组。
摘要信息
缺省值 1
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
identity reservation size 设置标识值数量的限制。
idle migration timeout
缺省值 60
有效值 0 - 32767
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
idle migration timeout 指定一个时间段,空闲连接将在此时间段过后关闭, 而不会使发送到客户端的迁移请求失效,从而允许您在指定的时间段后 停止实例,而无需等待空闲客户端连接迁移。
如果将 idle migration timeout 设置为较高的值,将会减慢正常关闭的速度, 原因是对于已发出迁移请求而客户端未启动迁移的所有空闲连接,实例 都必须等待指定的一段时间。
摘要信息
缺省值 1(分钟)
值的范围 1 - 600
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
job scheduler interval 设置 Job Scheduler 以多长的时间间隔检查哪些预定 作业到达预定执行时间。
摘要信息 |
||
缺省值 |
4 |
|
值的范围 |
1 - 640 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
job scheduler tasks 设置可通过 Job Scheduler 同时运行的最大作业数。
注释 如果将 job scheduler tasks 的值增加到较大值,则 number of user connections 的值必须至少增加 job scheduler tasks 增量值的两倍,才能启 动 Job Scheduler。
但是,如果运行预定作业的 Adaptive Server 就是托管 Job Scheduler 的 Adaptive Server,则必须将 number of user connections 值增大 job scheduler tasks 增量值的三倍,然后才能启动 Job Scheduler。
增大 number of user connections 可能需要增大 max memory 的值。
|
||
摘要信息 |
||
缺省值 |
80 |
|
值的范围 |
1 - 32768 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
js job output width 确定输出对 js_output 表中存储的作业使用的行宽。
摘要信息 |
||
缺省值 |
threaded |
|
值的范围 |
threaded 或 process |
|
Status |
静态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
kernel mode 确定 Adaptive Server 内核使用的模式(线程或进程)。在线 程模式中,Adaptive Server 使用操作系统线程支持 Adaptive Server 引擎 和专门任务。在此模式中,Adaptive Server 是操作系统中运行的单个进 程。在进程模式中,Adaptive Server 使用单独的进程支持 Adaptive Server 引擎。在此模式中,每个引擎都是操作系统中运行的不同进程。进程模 式是 Adaptive Server 15.7 之前的版本使用的相同内核。
注释 Adaptive Server 仅在 Windows 平台上支持线程内核模式。
kernel mode 的值是字符数据,所以必须使用 0 作为第二个 sp_configure 参 数(必须为数字)的占位符,并指定 threaded 或 process 作为第三个参 数。请参见 第 56 页的“使用 sp_configure 的单位规范”。
Sybase 假定您在生产服务器中使用线程模式,同时为了向后兼容而包含 进程模式。进程模式可能不支持 Adaptive Server 15.7 和更高版本的功能。
请参见《系统管理指南,卷 2》中的第 5 章“管理多处理器服务器”。
摘要信息
缺省值 • Solaris — 6184
• 所有其它平台 — 4096
值的范围 75 - 2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 物理内存
kernel resource memory 确定向所有线程池和其它内核资源分配内存的内 核资源内存池的大小(以 2K 页为单位)。可用于 kernel resource memory 的内存量取决于 max memory 的值。如果 max memory 没有足够内存可分 配给 kernel resource memory,Adaptive Server 将发出错误消息,其中包括 必须将 max memory 增大到的值。
所需的内核资源内存量主要由 max online engines 和 number of user connections 共同确定。对于引擎数小于等于 8 的配置,如果用户连接数 超过 100 个,Sybase 建议为每两个用户连接添加 1 页内核资源内存。对
于引擎数大于等于 9 的配置,为每个用户连接添加 1 页内核资源内存。
例如,具有 6 个引擎和 200 个用户连接的服务器应将缺省值增加 100。
具有 16 个引擎和 10000 个用户连接的服务器应将缺省值增加 10000。
摘要信息 |
||
缺省值 |
25 |
|
有效值 |
0–231 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
license information 允许 Sybase 系统管理员监控 Adaptive Server 中使用的 用户许可证的数目。启用该参数只监控发出的许可证数;但不强制执行 许可协议。
如果将 license information 设置为 0,则 Adaptive Server 不会监控许可证使 用。如果将 license information 设置为大于 0 的数值,则管家杂事任务将 监控 Adaptive Server 空闲周期中使用的许可证的数目。将 license information 设置为许可协议中指定的许可证数目。
如果使用的许可证数大于为 license information 设置的数目,则 Adaptive Server 会将以下消息写入错误日志:
WARNING: Exceeded configured number of user licenses
每过 24 小时,在此段时间内使用的最大许可证数就被加入到 syblicenseslog 表中。如果 Adaptive Server 重新启动,则重新开始 24 小时 周期。
请参见 Security Administration Guide(《安全性管理指南》)中的第 3 章 “Managing Adaptive Server Logins and Database Users”(管理 Adaptive Server 登录和数据库用户)。
摘要信息
缺省值 100
值的范围 1–2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 锁管理程序
对于运行多个引擎的 Adaptive Server,address lock spinlock ratio 设置由一 个螺旋锁保护的内部地址锁散列表中的行数。
Adaptive Server 使用带有 1031 行的内部散列表(通称为散列桶)来管理 地址锁的获取和释放。该散列表可以使用一个或多个螺旋锁,使运行在 不同引擎上的进程之间的访问串行化。
address lock spinlock ratio 的缺省值为地址锁散列表定义了 11 个螺旋锁。 前 10 个螺旋锁每一个可以保护 100 行,第十一个螺旋锁保护剩余的 31 行。如果为 address lock spinlock ratio 指定的值为 1031 或更大,则 Adaptive Server 将对整个表只使用一个螺旋锁。
摘要信息 |
||
缺省值 |
2048 |
|
值的范围 |
1–2147483647 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序、内存使用 |
lock hashtable size 指定锁散列表中散列桶的数目。该表管理所有行锁、 页锁、表锁,以及所有锁请求。每当一个任务获取一个锁时,即会将该 锁指派到一个散列桶,此后,对该锁的每个锁请求都将检查同一散列桶。 将该值设得太小将导致每个散列桶中容纳大量的锁,并减慢搜索的速度。 在具有多个引擎的 Adaptive Server 中,将该值设得太小还可能导致螺旋 锁争用的增加。设置该值不得小于缺省值 2048。
lock hashtable size 必须是 2 的幂。如果指定的值不是 2 的幂,sp_configure 将该值取整为 2 的下一个最高次幂,并显示信息性消息。
最佳的散列表大小是一个与可并发锁定的不同对象(页、表和行)的数 目相关的函数。最佳散列表大小至少应为需要并发锁定的不同对象的数 目的 20%。请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列:锁定和并发控制》)。
不过,如果您有大量的用户而且必须增加 number of locks 参数的值以避 免将锁用完,则应该使用 sp_sysmon 检查高峰期的平均散列链长度。如 果散列链平均长度超过了 4 或 5,请考虑将 lock hashtable size 的值从其当 前设置增加到 2 的下一个幂。
散列链长度在大量插入批处理(例如批量复制操作)期间可能会很大。 这是预期行为,无需重新设置 lock hashtable size。
摘要信息 |
||
缺省值 |
allpages |
|
值的范围 |
allpages、datapages、datarows |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序 |
lock scheme 用于设置当命令中未指定锁定方案时,create table 和 select into 命令将要使用的缺省锁定方案。
锁定方案的值是字符数据,所以必须使用 0 作为第二个参数(必须为数 字)的占位符,并指定 allpages、datapages 或 datarows 作为第三个参数:
sp_configure "lock scheme", 0, datapages
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 物理内存
lock shared memory 不允许 Adaptive Server 页到磁盘的交换,并允许操作 系统内核避开服务器的内部页锁定代码。这可以减少开销较大的磁盘 读取。
并非所有平台都支持共享内存的锁定。即使平台支持它,但由于设置权 限不正确、物理内存不足或其它原因,lock shared memory 也可能会失 败。有关共享内存锁定的信息,请参见所使用平台的操作系统文档。
摘要信息 |
||
缺省值 |
85 |
|
值的范围 |
1–2147483647 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序、内存使用 |
Adaptive Server 使用带有可配置散列桶个数的内部散列表来管理锁的获 取和释放。在 SMP 系统上,该散列表可以使用一个或多个螺旋锁,使 运行在不同引擎上的进程之间的访问串行化。若要设置散列桶的数目, 请使用 lock hashtable size。
对于运行多个引擎的 Adaptive Server,lock spinlock ratio 会设置一个比率,用 来确定一个螺旋锁保护的锁定散列桶的数量。如果增加 lock hashtable size,螺旋锁的数目也会增加,这样,一个螺旋锁保护的散列桶的数量 将保持不变。
Adaptive Server 的 lock spinlock ratio 缺省值为 85。如果将 lock hashtable size 设置为缺省值 2048,则缺省的螺旋锁比率会为锁散列表定义 26 个 螺旋锁。请参见《系统管理指南,卷 2》中的第 5 章“管理多处理器服 务器”。
sp_sysmon 报告有关锁散列表中散列链的平均长度。请参见《性能和调 优系列:使用 sp_sysmon 监控 Adaptive Server》。
摘要信息
缺省值 20
值的范围 1–2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 锁管理程序
对于运行多个引擎的 Adaptive Server,table lock spinlock ratio 设置由一个 螺旋锁保护的内部表锁散列表中的行数。
Adaptive Server 使用有 101 行的内部散列表(通称为散列桶)来管理表 锁的获取和释放。该散列表可以使用一个或多个螺旋锁,使运行在不同 引擎上的进程之间的访问串行化。
Adaptive Server 的 table lock spinlock ratio 缺省值为 20,该值为表锁散列表 定义 6 个螺旋锁。前 5 个螺旋锁每个螺旋锁保护 20 行;第 6 个螺旋锁保 护最后一行。如果为 table lock spinlock ratio 指定的值为 101 或更高,则 Adaptive Server 将对整个表只使用一个螺旋锁。
lock timeout pipe active
摘要信息
缺省值 1(关闭)
值的范围 0(打开),1(关闭)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
lock timeout pipe active 控制 Adaptive Server 是否收集锁超时消息。如果同 时启用了 lock timeout pipe active 和 lock timeout pipe max messages,则 Adaptive Server 将收集发生的每个锁超时的数据。
从 monLockTimeout 监控表中检索锁超时消息。
lock timeout pipe max messages
摘要信息
缺省值 0
值的范围 0 - 2147483648
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
lock timeout pipe max messages 控制锁超时管道中每个引擎的最大行数, 该参数确定 monLockTimeout 监控表可以返回的最大行数。
摘要信息 |
||
缺省值 |
2147483647 |
|
值的范围 |
0 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序 |
lock wait period 限制任务等待获取表、数据页或数据行中的锁的秒数。如 果任务不能在指定的时间段内获取锁,Adaptive Server 将向用户返回错 误消息 12205 并回退事务。
set 命令的 lock wait 选项设置任务等待锁时所用的会话级时间(以秒为单 位)。该值将替换此会话的服务器级设置。
lock wait period 与会话级设置 set lock wait nnn 一起使用,仅应用于用户定 义的表。这些设置对系统表毫无影响。
对于缺省值,所有进程都等待不确定的时间以获取锁。若要恢复缺省值, 请将该值重置为 2147483647,或输入:
sp_configure "lock wait period", 0, "default"
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 错误日志
log audit logon failure 指定是否将不成功的 Adaptive Server 登录记录到 Adaptive Server 错误日志;在 Windows 服务器上,则指定是否记录到 Windows 事件日志(如果启用了事件日志记录)。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 错误日志
log audit logon success 指定是否将成功的 Adaptive Server 登录记录到 Adaptive Server 错误日志;在 Windows 服务器上,则指定是否记录到 Windows 事件日志(如果启用了事件日志记录)。
摘要信息
缺省值 因平台而异
值的范围 1 — 因平台而异的值
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 操作系统资源
max async i/os per engine 指定单个引擎一次能够进行的未完成异步磁盘
I/O 请求的最大数目。
在 Linux 平台上
在 Linux 平台上,max async i/os per engine 控制在操作系统中保留的异步
IO 数。
在线程模式中,Adaptive Server 为引擎服务器保留 max async i/os per engine 的值。在进程模式中,Adaptive Server 为每个引擎保留 max async i/os per engine 的值。例如,如果将 max async i/os per engine 设置为 4096 并 且存在 4 个引擎,则 Adaptive Server 在线程模式中会保留 4096 个 I/O, 但在进程模式中则保留 16384 个 I/O。
当使用的数字大于缺省值时,系统会从中受益。
可以使用 sp_sysmon 来帮助调优 max async i/os per engine。sp_sysmon 的 disk i/o section 包含有关采样期间每个引擎的未完成 IO 的最大数量, 以及因引擎或操作系统限制延迟的 I/O 数量的信息。通常,因引擎限制 延迟的任何 I/O 均表示应增大 max async i/os per engine 的值。
Adaptive Server 是否能对设备执行异步 IO 操作取决于此设备是否支持内 核异步 I/O (KAIO)。Linux 内核要求在文件系统级别实现内核异步 I/O 支 持。大多数主流文件系统都支持内核异步 I/O,其中包括 ext3、xfs、jfs 和裸设备。tmpfs 文件系统不支持内核异步 I/O。如果设备不支持内核异 步 I/O,Adaptive Server 将不能对该设备执行异步 IO 操作,而是将对该 设备的所有读取和写入都恢复为标准同步 IO。Adaptive Server 将在错误 日志中输出类似如下的消息,指出设备已切换到同步 IO:
00:00000:00001:2006/12/15 11:47:17.98 kernel Virtual device '/dev/shm/tempdb.dat' does not support kernel asynchronous i/o.Synchronous i/o will be used for this device.
摘要信息
缺省值 因平台而异
值的范围 1 — 因平台而异的值
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 操作系统资源
待执行的 I/O
max async i/os per server 参数指定:对 Adaptive Server 而言,允许同时存 在的、未完成异步磁盘 I/O 请求的最大数量。该限制不受每个 Adaptive Server 的联机引擎数影响。max async i/os per engine 限制每个引擎未完成 I/O 的数目。
大多数操作系统限制同时处理的异步磁盘 I/O 的数目;一些操作系统限 制每个操作系统进程能够处理的数目,而另一些操作系统限制每个系统 能够处理的数目,还有一些操作系统则对两者都进行限制。如果应用程 序超过这些限制,则操作系统返回一个错误消息。因为操作系统调用的 开销相对较大,所以 Adaptive Server 尝试执行已被操作系统拒绝的异步 I/O 的效率较低。
为了避免这种情况,Adaptive Server 维护每个引擎和每个服务器的未完 成异步 I/O 的数量;如果一个引擎发出的异步 I/O 超过 max async i/os per engine 或 max async i/os per server,则 Adaptive Server 将延迟 I/O 直到有 足够多的未完成异步 I/O 完成从而使其数量降低至超过的限制以下。
例如,假设操作系统限制每个系统有 200 个异步 I/O 及每个进程有 75 个 异步 I/O,同时一个 Adaptive Server 带有 3 个联机引擎。这些引擎当前 总共有 200 个待执行的异步 I/O,按照下表进行分配:
引擎 数目 结果
0 60 引擎 0 延迟执行任何后面的异步 I/O,直到该服务器的异步 I/O 总数降到操作 系统对每个系统的限制以下,然后继续发出异步 I/O。
1 75 引擎 1 延迟执行任何后面的异步 I/O,直到每个引擎的异步 I/O 总数降到操作 系统对每个进程的限制以下,然后继续发出异步 I/O。
2 65 引擎 2 延迟执行任何后面的异步 I/O,直到该服务器的异步 I/O 总数降到操作 系统对每个系统的限制以下,然后继续发出异步 I/O。
所有的 I/O(包括同步和异步)都需要磁盘 I/O 结构,因此 disk i/o structures 值会限制未完成的磁盘 I/O 总数。与因为 I/O 请求超过 max i/os per server 而延迟 I/O 相比,Adaptive Server 因为它不能得到磁盘 I/O 结构 而延迟 I/O 的效率稍高一些。将 max async i/os per server 设置为与 disk i/o structures 的值相等。请参见 第 104 页的“ disk i/o structures ”。
如果在操作系统能够调优异步 I/O 限制,则确保为 Adaptive Server 设置 足够高的异步 I/O 限制。根据需要设置较高的限制,并不会对性能产生 任何影响。
使用 sp_sysmon 可查看每个服务器或每个引擎的限制是否会延迟系统的 I/O。如果 sp_sysmon 显示 Adaptive Server 超出了每个引擎或每个服务器 未完成请求的限制,则提高相应参数的值。请参见《性能和调优系列: 使用 sp_sysmon 监控 Adaptive Server》。
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 组件集成服务
max cis remote connections 指定能够通过组件集成服务与远程服务器同时 进行 Client-Library 连接的最大数目。
缺省情况下,组件集成服务允许每个用户同时与远程服务器进行的连接 最多为四个。如果将最多用户数设置为 25,则组件集成服务最多允许同 时建立 100 个 Client-Library 连接。
如果此数目没有满足安装需要,则可以明确指定服务器一次能够建立的 对外 Client-Library 连接的数目来替换原设置。
摘要信息
缺省值 0
有效值 1 — 启动时的引擎数减 1
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 备份/恢复
max concurrently recovered db 确定并行度。最小值为 1(即使用串行恢复), 但您也可以使用它的缺省值 0,以使用自调优方法。最大值等于启动时 的引擎数减 1。max concurrently recovered db 还受配置参数 number of open databases 的值的限制。
摘要信息 |
||
缺省值 |
因平台而异 |
|
值的范围 |
因平台而异的最小值 — 2147483647 |
|
Status |
动态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、物理内存 |
max memory 指定可配置 Adaptive Server 分配的最大物理内存总量。max memory 必须大于 Adaptive Server 的当前配置所消耗的总逻辑内存量。
对于配置 Adaptive Server 以便使用计算机上最大的可用内存,并不会对 性能产生任何影响。不过,应估计系统上的其它内存需求,否则 Adaptive Server 可能无法获得足够的内存来启动。
请参见《系统管理指南,卷 2》中的第 3 章“配置内存”。
如果 Adaptive Server 不能启动
在将 allocate max shared memory 设置为 1 时,Adaptive Server 必须具有 max memory 指定的可用内存量。如果内存不足,Adaptive Server 就不会 启动。如果发生这种情况,可手动更改服务器配置文件中 max memory 的值,以减少 Adaptive Server 的内存需求。也可将 allocate max shared memory 更改为 0,以便在启动时不需要 max memory 所要求的全部内存。
还可能需要减少其它需要大量内存的配置参数的值。然后重新启动 Adaptive Server 以使用新值所指定的内存。如果 Adaptive Server 启动失 败是因为其它配置参数值的总和高于 max memory 值,则可参见《系统 管理指南,卷 2》中的第 3 章“配置内存”,了解有关使用内存的配置 参数的信息。
摘要信息
缺省值 50
最大值 50 - 1000
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 用户环境
注释 max native threads per engine 在线程模式中将被忽略。
max native threads per engine 定义服务器生成的每个引擎的本机线程最大 数。达到本机线程的数量限制时,请求本机线程的 Adaptive Server 会话 进入休眠状态,直到其它会话释放本机线程为止。
在 Adaptive Server 15.0.3 及更高版本中,最大嵌套级别已增加到 100, 并将缺省值增加到 50。
摘要信息
缺省值 50
值的范围 16 - 100
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 用户环境
maximum nesting level 设置存储过程和触发器的最大嵌套级别。每增加一 个嵌套级别都需要约 160 字节的额外内存。例如,如果将嵌套级别从 16 增加到 26,则 Adaptive Server 需要 1600 字节的额外内存。
摘要信息
缺省值 512
值的范围 512–65024
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 网络通信
max network packet size 指定与 Adaptive Server 通信的客户端能够请求的 最大网络包大小。
如果某些应用程序通过网络发送或接收大量数据,并且这些应用程序使 用较大的包大小,则可以显著地改善性能。大批量复制操作以及读取或 写入大量 text、unitext 和 image 值的应用程序便是两个示例。
通常情况下,您希望:
• 对于执行小规模查询的用户,将 default network packet size 设置为较 小的值,并且
• 将 max network packet size 设置为足够大的值,以使发送或接收大量 数据的用户能够请求较大的包大小。
max network packet size 值必须保持与 default network packet size 值同样大 小或比它更大。不是 512 偶数倍的值将被向下舍入。
对于显式请求接收较大网络包大小的客户端应用程序,还必须配置 additional network memory 。请参见 第 72 页的“ additional network memory ”。
Open Client Server 不能接受超过 64K 的网络包大小。 有关使用这些程序的较大包大小的信息,请参见《实用程序指南》中的 bcp
和 isql。Open Client Client-Library 文档包括关于使用可变包大小的信息。
为了获得最佳性能,选择一个可充分使用网络上基础包大小的服务器包 大小。目标是:
• 减少服务器读取和写入网络的次数
• 减少网络包中的未使用空间(增加网络吞吐量)
例如,如果网络包大小携带 1500 字节的数据,则将 Adaptive Server 的包 大小设置为 1024(即 512*2)可能比设置为 1536(即 512*3 )会获得更 好的性能。 图 5-3 显示了这种情况下四个不同的包大小配置的执行情况。
图 5-3:确定包大小的因子
基础网络包:1500 字节(去掉开销后)
包大小为 512
已使用 1024 字节
未使用 476 字节
使用百分比 68%
2 次服务器读取
包大小为 1024
已使用 1024 字节
未使用 476 字节
使用百分比 68%
1 次服务器读取
包大小为 2560
已使用 2560 字节
未使用 440 字节
使用百分比 85%
2 次服务器读取
包大小为 1536
已使用 1536 字节
未使用 1464 字节
使用百分比 51%
2 次服务器读取
关键字:
根据数据量,网络包可能有 1 或 2 个
|
应该比缺省值 512 时的性能有所改善
|
可能是图示选择中的最佳选项
可能是图示选择中的最差选项
开销 数据 未使用
确定网络上基础包的可用数据空间后,执行自己的基准测试以确定配置 的最优大小。
可以使用 sp_sysmon 了解 max network packet size 的更改如何影响网络 I/O 管理和任务切换。例如,尝试增加 max network packet size 的值,然后检 查 sp_sysmon 输出,了解这样的更改如何影响较大批次的 bcp。请参见
《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
max number network listeners
摘要信息
缺省值 5
值的范围 0–2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、网络通信
max number network listeners 指定 Adaptive Server 一次允许使用的网络监 听器的最大数目。
每个主端口都有一个网络监听器。一般情况下,无需拥有多个主端口, 除非 Adaptive Server 必须通过多种网络类型进行通信。某些平台支持套 接字和 TLI(传送层接口)网络接口。有关支持的网络类型的信息,请 参见所用平台的《配置指南》。
max online engines
摘要信息
缺省值 1
值的范围 1–1024(线程模式) 1–128(进程模式)
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、处理器
max online engines 设置可以联机的引擎线程数的上限。它不考虑启动时 可用的 CPU 数量,并允许用户日后增加 CPU 数。有关如何为 SMP 环境 设置该参数的详细论述,请参见《系统管理指南,卷 2》中的第 5 章“管 理多处理器服务器”。
在启动时,Adaptive Server 使用单个引擎线程启动并完成其初始化操作, 包括所有数据库的恢复。它最终任务是分配额外的服务器引擎。每个引 擎访问共享内存中的通用数据结构。
调优 max engines online 参数时:
• 绝不能使联机引擎线程数大于 CPU 的数目。
• max engines online 必须设置为足够大的值,Adaptive Server 才能将所 有引擎线程池同时联机。
• 根据整个系统的负载(包括除了 Adaptive Server 的应用程序),可 以通过保留一些可用的 CPU 来运行非 Adaptive Server 进程,获得最 佳吞吐量。
• 可通过运行数量较少但 CPU 使用率较高的引擎线程来实现更佳吞吐 量,而不是运行数量较多但 CPU 使用率较低的引擎线程。
• 可伸缩性与应用程序有关。对应用程序进行全面的基准测试,以确 定联机引擎线程的最佳配置。
• 在进程模式中,可使用 sp_engine 使引擎线程脱机或联机。可以使除 引擎 0 以外的所有引擎线程脱机。
请参见《性能和调优系列:基础知识》中的第 3 章“使用引擎和 CPU”。
摘要信息
缺省值 0
值的范围 0 - 127
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 处理器
(仅限进程模式)max online Q engines 用于指定可以联机的最大 Q 引擎 数,它是 MQ 所必需的(请参见 Active Messaging 文档)。
最大 Q 引擎数取决于 max online engines 的值:
• max online Q engines 不能大于 max online engines 减去 number of engines at startup 所得的值。也就是说,如果 max online engines 的值 为 57,number of engines at startup 的值为 28,则 max online Q engines 的值不能大于 29。
• 设置 max online Q engines 可为 Q 引擎保留高范围的 max online engines。设置 max online Q engines 之后,Adaptive Server 引擎便无法 再使用为 Q 引擎保留的范围内的引擎。例如,如果将 max online engines 设置为 10 并将 max online Q engines 设置为 4:
• 如果试图将引擎组绑定到引擎 6、7、8 或 9,Adaptive Server 将 发出一条错误。
• 不能将 number of engines at startup 的值更改为 7、8 或 9
• 不能将引擎 6、7、8 或 9 添加到引擎组
由于设置 max online Q engines 可能会影响现有的生产环境,Sybase 建 议将 max online engines 的值与 max online Q engines 的值增大相同的量。 例如,如果将 max online Q engines 增加 4,也要将 max online engines 增 加 4。
摘要信息 |
||
缺省值 |
1 |
|
值的范围 |
1–255 |
|
Status |
动态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
max parallel degree 指定在全服务器范围内每个查询允许使用的工作进程 的最大数目。这称为“最大并行度”。
如果 max parallel degree 太低,则给定查询的性能提高可能不太明显;如 果 max parallel degree 太高,则服务器编译的计划所需要的进程可能比执 行时实际可用的进程多,或者系统可能变得饱和而导致吞吐量下降。若 要启用并行分区扫描,请将该参数的值设置为等于或大于所查询的表中 的分区数。
此参数的值必须小于或等于 number of worker processes 的当前值。 如果将 max parallel degree 设置为 1:
• Adaptive Server 将以串行方式扫描所有表或索引。
• Adaptive Server 将强制实施串行查询执行,优化程序可以选择并行 度比禁用此参数时更高的计划。
如果更改 max parallel degree,则会导致过程高速缓存中的所有查询计划 失效,并且在下一次执行存储过程或触发时需要编译新的计划。
请参见《性能和调优系列:查询处理和抽象计划》中的第 9 章“并行 排序”。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 30 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
用户环境 |
设置 Adaptive Server 允许的最大 PCI 插槽数。其值为:
• 0、1 — 带有一个 PCA 的缺省桥。
注释 JVM 只支持一个插槽。不要增加插槽数量。
• 2 - 30 — 为将来的版本分配。
有关 PCI 插槽的详细信息,请参见《Adaptive Server Enterprise 中的
Java》。
max query parallel degree
摘要信息
缺省值 1
值的范围 1 - 255
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
在 Adaptive Server 处于兼容模式时使用。定义要用于给定查询的工作进 程数。只有当您不需要以全局方式启用并行时,此参数才适用。number of worker process 的值不能小于 max query parallel degree 的值。
请参见《性能和调优系列:查询处理和抽象计划》中的第 5 章“并行查 询处理”。
有关兼容模式的详细信息,请参见《迁移技术指南》。
max repartition degree
摘要信息
缺省值 1
值的范围 1 — max parallel degree 的值
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
max repartition degree 配置 Adaptive Server 要求的动态重新分区数,这可 使 Adaptive Server 能够使用水平并行度。但是,如果分区数过高,系统 会被争用资源的工作进程所占用,并导致性能下降。max repartition degree 的值强行限定了这些资源可以创建的最大分区数。如果所有表和索引均 未分区,Adaptive Server 将在对数据重新分区后使用 max repartition degree 的值来提供要创建的分区数。
max resource granularity
摘要信息
缺省值 10
值的范围 1 - 100
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
max resource granularity 表示一个查询可使用的系统资源的最大百分比。 此参数不在执行时间强制使用,而是仅供查询优化程序参考,并且不阻 止查询处理器并行运行查询。查询引擎以 max resource granularity 作为参 考,来避免一些内存密集型策略。
摘要信息
缺省值 1
值的范围 1–255
Status 动态
显示级别 Basic
摘要信息
要求的角色 系统管理员
配置组 Query Tuning
max scan parallel degree 为可用于以下访问方法的基于散列的扫描指定全 服务器范围内的最大并行度:
• 用于分区和不分区的表的并行索引扫描
• 用于不分区的表的并行表扫描
max scan parallel degree 应用于每个表或索引;也就是说,如果 max scan parallel degree 为 3,则使用基于散列的表扫描来扫描连接查询中的一个 表,第二个表则可通过基于散列的索引扫描进行最佳访问,该查询可以 使用 9 个工作进程(只要 max scan parallel degree 设置为 9 或更高值)。
当优化程序选择用于并行的、基于未分区的扫描操作的进程数时,它将 使用 max scan parallel degree 作为指导。它不适用于并行排序。因为没有 分区用来在设备间传播数据,所以并行进程可能在扫描期间访问同一个 设备。这可能导致额外的磁盘争用和磁头移动,从而可能使性能下降。 若要防止多个磁盘访问出现问题,请使用 max scan parallel degree 减少能 够并行访问该表的进程的最大数目。
如果该值太低,给定查询的性能提高就不很明显;而如果该值太高,服 务器就可能编译一些计划,它们会使用大量进程,导致磁盘访问效率降 低。一般的规则是:将该参数的值设置为不大于 2 或 3,因为只要 2 到 3 个工作进程就可以充分使用给定物理设备的 I/O。
将 max scan parallel degree 的值设置为小于或等于 max parallel degree 的当 前值。如果您指定的数值大于 max parallel degree 值,则 Adaptive Server 返回一个错误。
如果将 max scan parallel degree 设置为 1,则 Adaptive Server 将不会执行 基于散列的扫描。
如果更改 max scan parallel degree,则会导致过程高速缓存中的所有查询 计划失效,并且在下一次执行存储过程或触发时需要编译新的计划。
max SQL text monitored
摘要信息
缺省值 0
值的范围 0–2147483647
Status 静态
显示级别 Comprehensive
摘要信息
要求的角色 系统管理员
配置组 内存使用、监控
max SQL text monitored 指定为将 SQL 文本保存到与 Adaptive Server Monitor 共享的内存而为每个用户连接分配的内存量。
如果没有为批处理语句分配足够的内存,则要查看的文本可能会被截断。
Sybase 推荐使用的每个用户连接的内存初始值为 1024 字节。
从共享内存中分配给 SQL 文本的总内存量为:max SQL text monitored 与 当前配置的用户连接数的乘积。
摘要信息
缺省值 10
值的范围 1 - 255
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Adaptive Server 管理
max transfer history 控制 Adaptive Server 在每个数据库的 spt_TableTransfer 表中保留多少传输历史记录条目。对于跟踪的每个表,spt_TableTransfer 保留:
( N 个成功条目数) + ( N 个未成功条目数) 其中 N 是 max transfer history 的值。
降低此参数不会自动从 spt_TableTransfer 中删除任何条目。下一次您为 该表启动传输时,将会为给定的传输表删除条目。如果传输成功,则 会清除该表的成功传输条目。如果传输未成功,则将清除其失败的传 输条目。
例如,如果某个表在 spt_configure 中有 12 个成功和 9 个未成功的历史记 录条目,并且您将 max transfer history 更改为 5,则下一次成功传输该表 时,会将 5 个成功的条目放入 spt_configure,但 spt_configure 仍保留之前 的 9 个失败条目。
摘要信息
缺省值 10
值的范围 10–100
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 组诊断
maximum dump conditions 设置:针对 Adaptive Server 在共享内存中生成 数据转储这一情况,可以指定的约束条件的最大数目。
注释 此参数仅供 Sybase 技术支持部门使用。除非有 Sybase 技术支持 部门的指导,否则不要修改此参数。
max buffers per lava operator
摘要信息
缺省值 2048
值的范围 500 - 65535
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
maximum buffers per lava opeator 设置执行排序或散列处理(会占用大量处 理资源)的 Lava 运算符使用的缓冲区数量的上限。Lava 运算符使用会话 的 tempdb 数据高速缓存池中的缓冲区作为处理行的工作区。
Lava 运算符通常在其输入流中递归。排序将需要后续的合并轮次,直至 有足够的缓冲区可用于合并所有其余运行为止。散列处理需要后续轮次 基于任何溢出的集合建立散列表,直至所有其余数据都能放入内存中的 散列表中为止。某些查询在您增加 max buffers per lava operator 的情况下 需要较少的 I/O。对于使用 HASH DISTINCT、HASH VECTOR AGGREGATE
和 HASH UNION 运算符的查询,情况尤其如此。
在为具有多个并发用户的服务器增加 maximum buffers per lava operator 的 缺省值时,一定要小心。Adaptive Server 可能会为高开销的运算符单独分 配更多缓冲区,从而减少了可用于高速缓存用户的表和其它会话的工作 表的缓冲区数。可使用 sp_sysmon 来分析 tempdb 的数据高速缓存效率。
maximum buffers per lava operator 使用 max resource granularity 来限制使用 的缓冲区数。限制设置为以下各项中的最小值:
• maximum buffers per lava operator 的值,或
• (max resource granularity) X (tempdb 的页大小池中的数据缓冲区数)
有关设置为排序缓冲区分配的内存量的信息,请参见 第 195 页的“ number of sort buffers”。
maximum failed logins
摘要信息
缺省值 0
值的范围 -1 - 32767
Status 动态
显示级别 10
要求的角色 系统安全员
配置组 与安全性相关的参数
maximum failed logins 允许为登录名和角色设置全服务器范围的最大登录 尝试失败次数。
值 -1 表示每当鉴定失败时,syslogins 列 logincount 中的失败登录计数都 会更新,但不会锁定帐户。与之相比较,值 0(零)不允许为每次失败 鉴定递增该列,并且不允许因鉴定失败锁定帐户。
请参见《参考手册:过程》,了解有关使用 sp_modifylogin 更改特定角色 的最大失败登录数的信息。请参见《参考手册:命令》,了解有关使用 alter role 更改最大失败登录数的信息。
maximum job output
摘要信息
缺省值 32768
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
maximum job output 对单个作业可产生的最大输出设置限制(以字节为单 位)。如果一个作业产生的输出超过了 maximum job output 中指定的值, 则超过所输入值的所有返回数据都将被丢弃。
memory alignment boundary
摘要信息
缺省值 逻辑页大小
值的范围 2048a - 16384
a 是由服务器逻辑页大小确定的最小值
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 高速缓存管理器
memory alignment boundary 确定数据高速缓存联接处的内存地址边界。
如果内存结构沿某个地址界限对齐,一些计算机执行 I/O 的效率可以更 高。若要保持这种对齐方式,memory alignment boundary 的值应当始终是 介于逻辑页大小和 2048K 之间的 2 的乘方。
注释 memory alignment boundary 参数可用来支持一些硬件平台。除非有
Sybase 技术支持部门的指导,否则不要修改此参数。
摘要信息
缺省值 1024
值的范围 1024–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用
memory per worker process 指定工作进程使用的内存量(以字节为单位)。 每个工作进程在查询处理期间都需要内存以用于消息发布。该内存是从 一个共享的内存池中分配的;该内存池的大小是 memory per worker process 与 number of worker processes 的乘积。对大多数查询处理,缺省大小已 经足够了。如果使用 dbcc checkstorage 并将 number of worker processes 设 置为 1,则可能需要将 memory per worker process 增加到 1792 字节。
请参见《系统管理指南,卷 2》中的第 3 章“配置内存”。
messaging memory |
||
摘要信息 |
||
缺省值 |
400 |
|
值的范围 |
60 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、物理内存 |
配置可用于 Sybase 消息传送的内存量。
metrics elap max |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
metrics elap max 配置 QP 指标的最长经历时间和阈值
metrics exec max |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
metrics exec max 配置 QP 指标的最长执行时间和阈值。
metrics lio max |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
metrics lio max 配置 QP 指标的最大逻辑 I/O 和阈值。
metrics pio max
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员 配置组
metrics pio max 配置 QP 指标的最大物理 I/O 和阈值。
摘要信息
缺省值 200
值的范围 20 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
min pages for parallel scan 控制 Adaptive Server 可并行访问的表和索引的数 目。如果表中的页数低于您设置的值,则以串行方式访问表。min pages for parallel scan 不考虑页大小。如果 Adaptive Server 访问索引和表, Adaptive Server 将尝试在适合的情况下对数据进行重新分区,并在适合 的情况下以并行方式进行扫描。
minimum password length
摘要信息
缺省值 6
值的范围 0 - 30
Status 动态
显示级别 10
要求的角色 系统安全员
配置组 与安全性相关的参数
minimum password length 允许自定义全服务器范围内的口令值或者每个登 录名或每个角色口令值的长度。每个登录名或每个角色的 minimum password length 值将替换全服务器范围内的值。设置 minimum password length 只影响在设置此值之后创建的口令;现有口令长度不变。
使用 minimum password length 为登录名和角色指定 minimum password length 的全服务器范围的值。例如,若要将所有登录名和角色的 minimum password length 都设置为 4 个字符,请输入:
sp_configure "minimum password length", 4
若要在创建特定登录名时设置 minimum password length,请使用 sp_addlogin。例如,若要创建口令为“Djdiek3”的新登录名“joe”,并 将“joe”的 minimum password length 设置为 4,请输入:
sp_addlogin joe, "Djdiek3", minimum password length=4
若要在创建特定角色时设置 minimum password length,请使用 create role。 若要创建口令为“temp244”的新角色“intern_role”,并将“intern_role” 的 minimum password length 设置为 0,请输入:
create role intern_role with passwd "temp244", minimum password length 0
原口令是 7 个字符,但由于最小口令长度设置为 0,因此该口令可更改 为任意长度。
使用 sp_modifylogin 设置或更改现有登录名的 minimum password length。 sp_modifylogin 只影响用户角色,不影响系统角色。例如,若要将登录名 “joe”的 minimum password length 更改为 8 个字符,请输入:
sp_modifylogin "joe", @option="minimum password length", @value="8"
注释 value 参数的数据类型为 character;因此数字值必须用引号引起来。
若要将所有登录名的 minimum password length 的覆盖值都更改为 2 个字 符,请输入:
sp_modifylogin "all overrides", "minimum password length", @value="2"
若要删除所有登录名的 minimum password length 的替换值,请输入:
sp_modifylogin "all overrides", @option="minimum password length", @value="-1"
使用 alter role 设置或更改现有角色的 minimum password length。例如,若 要将现有角色“physician_role”的 minimum password length 设置为 5 个字 符,请输入:
alter role physician_role set minimum password length 5
若要替换所有角色的 minimum password length,请输入:
alter role "all overrides" set minimum password length -1
摘要信息
缺省值 2
值的范围 0 - 2
• 0 — 禁用。
• 1 — 启用。
• 2 — 根据优化目标设置来设置。
Status 动态
显示级别 Comprehensive
所需的角色 系统管理员
配置组 查询调优
如果存在以下各项,则 mnc_full_index_filter 将防止 Adaptive Server 考虑在 服务器级没有限制搜索参数的非覆盖索引:
• 索引中的列
• 没有直方图的谓词 可以对其中有智能索引扫描的仅数据锁定 (DOL) 表使用
mnc_full_index_filter,即使智能索引扫描生成搜索参数也是如此。
更改 mnc_full_index_filter 的值不会增加 Adaptive Server 使用的内存量。
没有为任何特定可选目标启用 mnc_full_index_filter;获得该行为的唯一方 式是显式启用该参数。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
msg confidentiality reqd 要求对所有进出 Adaptive Server 的消息进行加密。 若要对消息进行加密,use security services 参数必须是 1。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统安全员 |
|
配置组 |
与安全性相关的参数 |
msg integrity reqd 要求检查所有消息的数据完整性。要检查消息的完整性, use security services 必须是 1。如果将 msg integrity reqd 设置为 1,则除非 客户端使用了以下安全服务之一,否则 Adaptive Server 可以成功地进行 客户端连接:message integrity、replay detection、origin checks 或 out-of-seq checks。
net password encryption required
摘要信息
缺省值 0
值的范围 0 - 2
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
值 说明
net password encryption reqd 将登录鉴定限定为仅使用 RSA 加密算法或
Sybase 专有算法。 表 5-3 介绍了 net password encryption reqd 的有效值。
表 5-3:net password encryption reqd的值及说明
0 允许客户端选择用于网络登录口令的加密算法,包括无口令加密。
1 限制客户端使用 RSA 或 Sybase 专有加密算法对网络上的登录口令进行加密。此值提供限制性更 强的设置,允许以前连接的客户端使用 Sybase 专有算法重新连接,而新客户端使用更强大的 RSA 算法连接。客户端尝试不使用口令加密进行连接会失败。
2 限制客户端仅使用 RSA 加密算法对网络上的登录口令进行加密。这样可提供口令的强 RSA 加 密。客户端尝试不使用 RSA 加密进行连接会失败。
当连接因为要求网络口令加密被拒绝时,客户端会收到以下消息:
Msg 1640, Level 16, State 2:
Adaptive Server requires encryption of the login password on the network.
number of alarms
摘要信息
缺省值 40
值的范围 40 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
number of alarms 指定由 Adaptive Server 分配的报警结构数量。
Transact-SQL 命令 waitfor 为语句块、存储过程或事务的执行定义特定时 间、时间间隔或事件。Adaptive Server 使用警报来正确地执行 waitfor 命 令。其它内部进程也需要警报。
当 Adaptive Server 需要比当前分配的更多警报时,如下消息将写入错误 日志中:
uasetalarm: no more alarms available
每个警报结构所需的内存字节数很少。如果显著地增加 number of alarms value,请相应地调整 max memory。
number of aux scan descriptors
摘要信息
缺省值 200
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
number of aux scan descriptors 设置在由服务器上的所有用户共享的缓冲池 中,可用的辅助扫描描述符的数量。
每个用户连接和每个工作进程都有专门分配给其的 48 个扫描描述符。 其中,16 个留给用户表,12 个留给工作表,还有 20 个留给系统表(其 中有 4 个留给回退条件)。当查询直接或间接地引用表时,要用到每个 表的描述符。对于用户表,表引用包括:
• 在查询的 from 子句中引用的所有表
• 在查询指定的视图中引用的所有表(视图本身不算在内)
• 子查询中引用的所有表
• 用于检查参照完整性的所有表(这些表只用于插入、更新和删除)
• 使用 select...into 创建的表
• 所有为查询创建的工作表
如果某个表被引用一次以上(例如,在自连接中、在多个视图中或在多 个子查询中),每次都将对该表进行计数。如果查询包括 union,则 union 查询中的每个 select 语句都是单独的扫描。如果查询以并行方式运行, 协调进程和每个工作进程时都需要扫描描述符以用于引用每个表。
由查询扫描引用的用户表的数量超过 16,或工作表的数量超过 12 时,将 从共享缓冲池中分配扫描描述符。通过表扫描访问的每个 DOL 锁定表
(而不是通过索引扫描访问的表)也需要系统表描述符。如果在一次查
询中使用表扫描方式扫描了 16 个以上的 DOL 锁定表,将为它们分配辅 助扫描描述符。
如果扫描在已用完所分配数目的描述符后需要辅助扫描描述符,但在共 享的缓冲池中没有可用的描述符,Adaptive Server 将显示一条错误消息 并回退用户事务。
如果查询均不需要额外的扫描描述符,最好仍将 number of aux scan descriptors 的设置保持为缺省值,以防系统要求变大。只有在确保系统 中的用户运行查询的表的数目绝不会超过 16,并且您的表将始终只有很 少(或根本没有)参照完整性约束的情况下,才能将该参数设置为 0 。 请参见 第 174 页的“监控扫描描述符的使用”。
如果查询需要更多的扫描描述符,可使用以下方法之一进行补救:
• 重写查询,或使用临时表将它分为几个步骤。对于 DOL 锁定表, 如果有许多表扫描,可以考虑增加索引。
• 如果表使用大量的参照完整性约束,可重新设计表的模式以使其使 用较少的扫描描述符。可通过在运行查询前启用 set showplan, noexec on,来了解查询将使用多少扫描描述符。
• 增加 number of aux scan descriptors 的设置值。
以下各节说明如何使用 sp_monitorconfig 监视当前和高位值使用情况,以 避免用完描述符;以及如何估计所需扫描描述符的数量。
sp_monitorconfig 报告未使用(可用)的扫描描述符的数量、当前正在使 用的辅助扫描描述符数量、处于活动状态的百分比以及自从服务器上次 启动后所使用的扫描描述符的最大值。在高峰期定时运行该命令以监控 扫描描述符的使用情况。
此示例显示配置了 500 个描述符的扫描描述符的使用情况:
sp_monitorconfig "aux scan descriptors"
Usage information at date and time: Apr 22 2002 2:49PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
number of aux 260 240 48.00 427
0 NULL
只有 240 个辅助扫描描述符正被使用,留下 260 个没有使用。但是,自 最近一次启动 Adaptive Server 后任意时刻使用的扫描描述符的最大数 量为 427,留下大约 20% 以备使用增长和非常繁忙的高峰使用时所需。 “Re-used”不适用于扫描描述符。
估计和配置辅助扫描描述符
若要估计扫描描述符,请使用:
1 通过运行启用 set showplan 和 set noexec 的查询,为引用超过 16 个用 户表的任何查询或有大量参照约束的任何查询确定表引用的数量。 如果需要辅助扫描描述符,用 showplan 报告所需的数量:
Auxiliary scan descriptors required: 17
报告的数量包括查询所需的所有辅助扫描描述符,包括所有用于工 作进程的描述符。如果查询只包括参照约束,也可以使用 sp_helpconstraint,它可显示每个表的参照约束计数。
2 对于每个使用辅助扫描描述符的查询,可估计同时运行查询的用户
数量并相乘。如果预计有 10 个用户要运行需要 8 个辅助描述符的查 询,则一次需要的总数为 80。
3 对每个查询的结果求和以计算所需辅助扫描描述符的数量。
摘要信息
缺省值 0
值的范围 1 - 32768
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 用户环境
number of backup connections 设置 Backup Server 建立的用于转储或装载内 存中数据库的用户连接的最大数量。由于 Backup Server 在您运行 dump 或 load database 时需要为每个设备使用一个用户连接,并且需要额外的 连接来运行 dump database 命令,因此 number of backup connections 的值 限制存档数据库的最大设备数。
number of backup connections 是一个限制,并且不会消耗任何资源。将 number of backup connections 设置为 0 意味着 Backup Server 可使用最大数 量的用户连接。
摘要信息
缺省值 0
值的范围 0 - 100
Status 静态
显示级别 要求的角色
配置组 诊断
留作将来使用。
number of checkpoint tasks
摘要信息
缺省值 1
有效值 1– 8
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 备份/恢复
number of checkpoint tasks 配置并行检查点。number of checkpoint tasks 的 值必须小于或等于 number of engines at start-up 的值。该参数的最大值受 到配置参数 number of engines online at startup 和 number of open databases 的值的限制,最大值为 8。
缺省值将串行检查点设置为缺省行为。
number of devices |
||
摘要信息 |
||
缺省值 |
10 |
|
值的范围 |
1–2,147,483,647 |
|
Status |
动态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
磁盘 I/O、内存使用 |
number of devices 控制 Adaptive Server 可使用的数据库设备数。它不包括 用于数据库或事务日志转储的设备。
在执行 disk init 时,尽管虚拟设备号 ( vdevno ) 是可选的,但您也可以分配 此值。如果不分配 vdevno,Adaptive Server 则会分配下一个可用虚拟设 备号。
如果分配了虚拟设备号,在 Adaptive Server 所使用的设备号当中,每个 设备号都必须具有唯一性。数字 0 是专为主设备保留的。您可以输入处 于有效值范围内的任意未使用的设备号。
要确定当前正在使用哪些号码,请输入:
select vdevno from master..sysdevices where status & 2 = 2
其中,“status 2”指定物理磁盘。
在 UNIX 中设置设备数
如果您正在 UNIX 平台中使用大量设备,Sybase 建议您首先在配置文件 中设置适当数量的设备和用户连接。尝试用 sp_configure 动态配置大量 设备可能会失败。
number of network connections 和 number of devices 配置参数使用操作系统 文件描述符。必须增加操作系统文件描述符数,才能对上述任一配置参 数使用较大值。
大量设备的构成情况因平台而异。以下是用于 Adaptive Server 的文件描 述符数量的上限:
• HPIA 64、HPPA 64、AIX 64、Windows — 由 Adaptive Server 设置。
• IBM RISC 64 位 — 2000
• IBM PLinux — 2048
• AMD64 Linux — 10000
• IA32 位 Linux — 10000
• IA 64 位 Linux — 1024
注释 更改文件描述符的数量后需要重新启动 Adaptive Server,更改才 能生效。
如果文件描述符的数量不足,Adaptive Server 将发出类似如下的错误 消息:
Msg 5893, Level 16, State 1:Procedure 'sp_configure', Line 1234:
The sum, ( ((number of user connections) + (number of remote sites) + (max cisremote connections) + (number of java sockets)) / (max online engines)) + (number of devices ) + (max number network listeners),
must be no greater than '958'.
Msg 5849, Level 16, State 1:Procedure 'sp_configure', Line 1234: Verification failed for parameter 'number of devices'.
(return status = 1)
如果您之后使用 ulimit -n 2048 命令将文件描述符数量设置为 2048 并 重新启动服务器,则 Adaptive Server 会在您增大 number of devices 的值时 在错误日志中报告以下消息:
kernel Using 2048 file descriptors.
number of disk tasks
摘要信息
缺省值 1
值的范围 UNIX:1– 64 Windows:1
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 磁盘 I/O、处理器
number of disk tasks 控制专用于轮询和完成磁盘 I/O 的任务数。
摘要信息
缺省值 500
有效值 100 - 2147483647
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理、内存使用
number of dtx participants 设置 Adaptive Server 事务协调服务可以同时传播 和协调的远程事务的总数。DTX 参与者是协调服务用于管理远程事务分 支的内部内存结构。当事务被传播到远程服务器时,协调服务必须获得 新的 DTX 参与者来管理这些分支。
将 number of dtx participants 设置为小于缺省值的数值会减少服务器能够管 理的远程事务的数量。如果没有可用的 DTX 参与者,就无法启动新的 分布式事务。如果没有可用的 DTX 参与者传播新的远程事务,则正在 进行的分布式事务可能会中止。
将 number of dtx participants 设置为大于缺省值的数字会增加 Adaptive Server 能够处理的远程事务分支的数量,但占用的内存也更多。
针对系统优化 DTX 参与者的数量
在高峰期间,可使用 sp_monitorconfig 检查 DTX 参与者的使用情况:
sp_monitorconfig "number of dtx participants"
Usage information at date and time: Apr 22 2002 2:49PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
number of dtx 80 20 4.00 210
0 NULL
如果 num_free 值为零或非常低,则新的分布式事务可能会由于缺少 DTX
参与者而无法启动。可考虑增加 number of dtx participants 的值。
较低的 Max_used 值可能表示未使用的 DTX 参与者会占用可供其它服务 器功能使用的内存。可考虑减小 number of dtx participants 的值。
number of dump threads
摘要信息
缺省值 已禁用
值的范围 1(禁用,无并行) - 8(完全并行)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 组诊断
number of dump threads 控制 Adaptive Server 为执行内存转储而产生的线 程数。使用合适的 number of dump threads 值可以减少内存转储过程中引 擎停止的时间。
在确定内存的线程数时:
• 如果计算机有足够的可用内存供文件系统高速缓存来保存整个内存 转储,则使用值 8。
• 如果不知道计算机是否有足够的可用内存,number of dump threads 的值取决于许多因素,包括 I/O 系统的速度、磁盘速度、控制器的 高速缓存、转储文件是否存在于在几个磁盘上创建的逻辑卷管理器 中等。
• 在执行内存转储时如果不停止引擎,则禁用并行处理(通过分配 值 1),如下所述。
当 Adaptive Server 执行内存转储时,所创建的文件数等于所分配的 内存段数的总和乘以已配置的线程数。Adaptive Server 使用独立的 线程写入独立的文件。此作业完成后,引擎重新启动,并且文件被 合并到目标转储文件中。因此,以并行方式转储共享内存所用的时 间大于以串行方式转储共享内存所用的时间。
• 如果在内存转储过程中停止引擎,则使用除 1 以外的其它值可能会 减少转储内存时引擎停止的时间。
number of engines at startup
摘要信息
缺省值 1
值的范围 1 — 计算机上的 CPU 数
Status 静态
显示级别 Basic
要求的角色 系统管理员
配置组 Java 服务、内存使用、处理器
注释 配置为线程模式时,Adaptive Server 将忽略 number of engines at startup 配置参数。在线程模式中,Adaptive Server 启动时使用定义的线程 池的大小来确定联机引擎数。如果配置文件不包含线程池配置信息(例 如,在从早期版本升级时),Adaptive Server 将使用 number of engines at startup 的现有值来确定缺省引擎池的大小。
number of engines at startup 专门用于启动时设置要联机的引擎数。它提供 了非常大的灵活性,但也存在一定的限制,即不能将 number of engines at startup 的值设置为大于计算机上的 CPU 数,或大于 max online engines 的配置。如果不希望启动后使引擎联机,应将 max online engines 和 number of engines at startup 设置为相同的值。如果 number of engines at startup 和 max online engines 的值不同,则每个引擎大约浪费 1.8 MB 内存。
Adaptive Server 允许用户使所有引擎脱机,引擎 0 除外。
number of histogram steps
摘要信息
缺省值 20
值的范围 3 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
number of histogram steps 指定直方图中的梯级数。
number of index trips
摘要信息
缺省值 0
值的范围 0–65535
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 高速缓存管理器
number of index trips 指定在考虑将一个旧索引页换出前,该页遍历最近使 用最多的/最近使用最少的 (MRU/LRU) 链的次数。如果增加 number of index trips 的值,则索引页在高速缓存中将保留更长的时间。
数据高速缓存将被作为 MRU/LRU 链执行。当用户线程访问数据和索引 页时,这些页被放置在高速缓存的 MRU/LRU 链的 MRU 末端。在一些事 务密集环境(和基准值)中,您可能需要将索引页保留在高速缓存中, 因为很可能不久需要再次使用它们。如果设置较高的 number of index trips 参数值,则使索引页在高速缓存中保留的时间更长;而如果设置较低的 值,则可以将索引页立即换出高速缓存。
无需为宽松的 LRU 页设置 number of index trips。请参见《系统管理指南, 卷 2》中的第 4 章“配置数据高速缓存”。
注释 如果索引使用的高速缓存相对较小(特别是如果它与其它对象共 享空间),而事务量很大,则不要将 number of index trips 设置得太高。 高速缓存可能会被大量没有过期的页占用,这可能会导致等待高速缓存 空间的进程超时。
在将 number of index trips 的值更改为非零数值之前,请确保应用程序有 足够的高速缓存来存储所有索引、OAM 和数据页。在更改 number of index trips 的值之前,请咨询 Sybase 技术支持部门。
number of java sockets
摘要信息
缺省值 0
有效值 0 - 32767
Status 动态
显示级别 Comprehensive
摘要信息
要求的角色 系统管理员
配置组 Java 服务、内存使用
number of java sockets 实现 Sybase 支持的 Java VM 和 java.net 类。
number of large i/o buffers
摘要信息
缺省值 6
有效值 1–256
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 磁盘 I/O、内存使用、SQL Server 管理
number of large i/o buffers 设置分配单元大小的缓冲区的数目,这些缓冲区 是预留给某些 Adaptive Server 实用程序的,用于执行大 I/O。这些大 I/O 缓冲区主要由 load database 命令使用,该数据库使用一个缓冲区来装载 数据库,而坏考虑它指定的设备数。load database 然后使用最多 32 个缓 冲区来清除它装载的数据库页。load transaction 不使用这些缓冲区。若需 同时执行六个以上 load database 命令,请为每个 load database 命令配置 一个大 I/O 缓冲区。
create database 和 alter database 在清除数据库页时,会将这些缓冲区用于 大 I/O。create database 或 load database 的每个实例可使用最多 32 个大 I/O 缓冲区。
磁盘镜像和一些 dbcc 命令也使用这些缓冲区。
注释 在 Adaptive Server 12.5.0.3 版和更高版本中,大 I/O 缓冲区的大小 是一个分配(256 页),而不是一个扩充(8 页)。因此服务器需要对大 缓冲区分配更多内存。例如,早期版本中需要 8 页的内存的磁盘缓冲区
现在需要 256 页内存。
number of locks |
||
摘要信息 |
||
缺省值 |
5000 |
|
值的范围 |
1000–2147483647 |
|
Status |
动态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
锁管理程序、内存使用 |
number of locks 设置可供 Adaptive Server 上所有用户使用锁的总数。
Adaptive Server 需要的锁的数目取决于并发和并行的进程数目,以及事务 所执行的操作的类型。若要查看在某个特定时间正在使用的锁的数目, 请使用 sp_lock。
对于串行操作,Sybase 建议开始时为每个活动的并发连接分配 20 个锁。
并行执行的操作要求的锁比串行执行要多。例如,如果发现查询平均使 用五个工作进程,则可尝试将为串行操作配置的 number of locks 增加三 分之一。
如果系统用尽了所有锁,Adaptive Server 会显示一个服务器级的错误消 息。如果用户收到报告锁错误,则您可能需要增加 number of locks;但要 记住锁会占用内存。请参见《系统管理指南,卷 2》中的第 3 章“配置 内存”。
注释 数据行锁定可能要求更改 number of locks 的值。请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列: 锁定和并发控制》)。
number of mailboxes
摘要信息
缺省值 30
值的范围 30–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
number of mailboxes 指定 Adaptive Server 所分配的邮箱结构数。与邮件一 起使用的邮箱是由 Adaptive Server 内部使用的,用于在内核服务进程之 间进行通信和同步。用户进程不使用邮箱。除非有 Sybase 技术支持部门 的指导,否则不要修改此参数。
number of messages
摘要信息
缺省值 64
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
number of messages 指定由 Adaptive Server 分配的消息结构数。与邮箱一 起使用的邮件是由 Adaptive Server 内部使用的,用于在内核服务进程之 间进行通信和同步。消息也用于在并行处理中进程系列之间进行协调。 除非有 Sybase 技术支持部门的指导,否则不要修改此参数。
number of network tasks
摘要信息
缺省值 1
值的范围 UNIX:1– 64 Windows:1
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 磁盘 I/O、处理器
number of network tasks 控制专用于轮询和完成网络 I/O 的任务数。
摘要信息
缺省值 0
值的范围 0–65535
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
number of oam trips 指定在考虑将对象分配映射 (OAM) 页换出前,该页遍 历 MRU/LRU 链的次数。number of oam trips 的值越高,旧 OAM 页保留 在高速缓存中的时间就会越长。
每个表、表上的每个索引都有一个 OAM 页,其中包含分配给该表或索 引的页的有关信息;当该索引或表需要新的页时,就会检查该页(请参 见 第 205 页的“ page utilization percent ”)。单个 OAM 页可以保存 2,000 到 63,750 个数据页或索引页的分配映射。
OAM 页指向每个分配单元的分配页,对象使用这些分配单元中的空间。 而分配页又跟踪分配单元中有关扩充和页使用情况的信息。
在某些涉及重要的空间分配(即大批量复制操作)的环境和基准中,将 OAM 页较长时间地保留在高速缓存中会提高性能。如果将 number of oam trips 设置为较高的值,则会将 OAM 页保留在高速缓存中。
注释 如果高速缓存相对较小并被大量的对象使用,则不要将 number of oam trips 设置得太高。这样做可能导致高速缓存被大量没有过期的 OAM 页占用,并且用户线程可能开始超时。
在将 number of oam trips 的值更改为非零数值之前,请确保应用程序有足 够的高速缓存来存储所有索引、OAM 和数据页。在更改 number of oam trips 的值之前,请咨询 Sybase 技术支持部门。
number of open databases
摘要信息
缺省值 12
值的范围 6 –2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存、SQL Server 管理
number of open databases 设置在 Adaptive Server 上能够同时打开的数据 库的最大数量。
计算一个值时,应包括 master、model、sybsystemprocs 和 tempdb 系统数 据库。如果已经安装了审计,则还包括 sybsecurity 数据库。还要将样本 数据库 pubs2 和 pubs3、语法数据库 sybsyntax 以及 dbcc 数据库 dbccdb 计 算在内(如果已经安装这些数据库)。
如果计划进行重大改动,例如从另一个服务器装载一个大数据库,请使 用 sp_helpconfig 并通过 sp_helpconfig 来估算元数据高速缓存大小。 sp_helpconfig 显示给定数量的元数据描述符所需的内存量,以及给定内存 能够容纳的描述符的数量。数据库元数据描述符代表了数据库的状态, 即该数据库是正在使用还是在使用间隔被高速缓存。
❖ 优化 number of open databases
如果 Adaptive Server 显示一条消息,指出超出了允许的打开数据库的数 目,则应调整该值。
1 使用 sp_countmetadata 查找数据库元数据描述符的总数:
sp_countmetadata "open databases"
运行 sp_countmetadata 的最佳时间是在服务器几乎没有活动的时候。 在高峰期运行 sp_countmetadata 会导致该系统过程与其它进程的争用。
假设 Adaptive Server 报告以下信息:
There are 50 databases, requiring 1719 Kbytes of memory.The 'open databases' configuration parameter is currently set to 500.
2 将 number of open databases 参数值配置为 50:
sp_configure "number of open databases", 50
这个新的配置数仅仅是一个起点,请根据活动的元数据数据库高速 缓存描述符数(而非数据库总数)来确定理想大小。
3 在高峰期间查找活动的元数据描述符的数目:
sp_monitorconfig "open databases"
Usage information at date and time: Apr 22 2002 2:49PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
number of open 50 20 .00 26
0 NULL
在此示例中,有 20 个元数据数据库描述符处于活动状态;自服务
器上次启动以来一直处于活动状态的描述符最多有 26 个。
有关详细信息,请参见《参考手册:过程》中的 sp_monitorconfig。
4 将 number of open databases 的值配置为 26,再加上 10% 的额外空间
(大约是 3), 则总共为 29:
sp_configure "number of open databases", 29
如果服务器上有许多活动,例如正在添加或删除数据库,则要定期 运行 sp_monitorconfig。当活动描述符数发生变化时,请重置高速缓 存大小。
number of open indexes
摘要信息
缺省值 500
值的范围 100–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
number of open indexes 设置可在 Adaptive Server 上同时使用的索引的最大 数量。
如果计划进行大量更改,例如从其它服务器装载一个具有大量索引的数 据库,请使用 sp_helpconfig 估算元数据高速缓存的大小。sp_helpconfig 显示了给定数量的元数据描述符所要求的内存量,以及可以被给定内存 量容纳的描述符的数量。索引元数据描述符代表索引的状态,即该索引 是正在使用还是在使用间隔被高速缓存。
❖ 优化 number of open indexes
如果 number of open indexes 的缺省值不够大,则 Adaptive Server 在尝试 重用活动索引描述符后将显示一条消息,并且您必须调整此值。
1 使用 sp_countmetadata 查找索引元数据描述符的总数:
sp_countmetadata "open indexes"
运行 sp_countmetadata 的最佳时间是在服务器几乎没有活动的时候。 在高峰期运行 sp_countmetadata 会导致该系统过程与其它进程的争用。
假设 Adaptive Server 报告以下信息:
There are 698 user indexes in all database(s), requiring 286.289 Kbytes of memory.The 'open
indexes' configuration parameter is currently set to 500.
2 将 number of open indexes 参数配置为 698:
sp_configure "number of open indexes", 698
这个新配置只是一个起点,请根据活动的索引元数据高速缓存描述 符数(而不是索引总数)来确定理想大小。
3 在高峰期间查找活动的索引元数据描述符的数目:
sp_monitorconfig "open indexes"
Usage information at date and time: Apr 22 2002 2:49PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
number of open 182 516 73.92 590
0 NULL
在这个示例中,自从上一次启动服务器后已经使用的索引描述符的 最大数量是 590。
请参见《参考手册:过程》中的 sp_monitorconfig。
4 将 number of open indexes 配置参数配置为 590,再加上 10% 的额外 空间(即 59),则总共为 649:
sp_configure "number of open indexes", 649
如果服务器上有许多活动,例如正在添加或删除表,则要定期运行
sp_monitorconfig。当活动描述符数发生变化时,请重置高速缓存大小。
number of open objects
摘要信息
缺省值 500
值的范围 100–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存、SQL Server 管理
number of open objects 设置在 Adaptive Server 上能够同时打开的对象的最 大数量。
如果计划进行大量更改,例如从其它服务器装载一个具有大量对象的数 据库,请使用 sp_helpconfig 重新估算元数据高速缓存的大小。 sp_helpconfig 显示了给定数量的元数据描述符所要求的内存量,以及可 以被给定内存量容纳的描述符的数量。对象元数据描述符代表对象的状 态,即该对象是正在使用还是在使用间隔被高速缓存。
❖ 优化 number of open objects
如果缺省的 number of open objects 不够大,则 Adaptive Server 在尝试重用 活动的对象描述符后将显示一条消息。
1 使用 sp_countmetadata 查找对象元数据高速缓存描述符的总数:
sp_countmetadata "open objects"
运行 sp_countmetadata 的最佳时间是在服务器几乎没有活动的时候。 在高峰期运行 sp_countmetadata 会导致该系统过程与其它进程的争用。
假设 Adaptive Server 报告此信息:
There are 696 user objects in all database(s), requiring 1166 Kbytes of memory.The 'open objects' configuration parameter is currently set to 500.
2 将 number of open objects 配置为适合打开的对象数:
sp_configure "number of open objects", 1407
1407 包含临时表容纳的 1340 个用户对象加上其 5% 的用户对象。
这个新配置只是一个起点;请根据活动的对象元数据高速缓存描述 符数(而不是对象总数)来确定理想大小。
3 在高峰期间查找活动的元数据高速缓存描述符的数目:
sp_monitorconfig "open objects"
Usage information at date and time: Aug 20 2007 1:32PM..
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
--------------------- -------- ---------- ------- -------- ---------
--------------------
number of open objects 560 847 71.40 1497 0
NULL
在这个示例中,自从上一次启动服务器后已经使用的对象描述符的 最大数量是 1497。
4 将 number of open objects 配置为 1397,再加上它的 10%(即 140), 则总数为 1537:
sp_configure "number of open objects", 1537
如果服务器上有许多活动,例如正在添加或删除表,则要定期运行 sp_monitorconfig。当活动描述符数发生变化时,请重置高速缓存大小。 请参见《参考手册:过程》中的 sp_monitorconfig。
number of open partitions
摘要信息
缺省值 500
值的范围 100 - 2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
为系统优化 number of open partitions 参数
指定 Adaptive Server 可同时访问的分区数。
如果 number of open partitions 的缺省值不够大,则 Adaptive Server 在尝试 重用活动分区描述符后将显示一条消息。该值必须调整。
1 使用 sp_countmetadata 查找打开的分区总数。例如:
sp_countmetadata "open partitions"
运行 sp_countmetadata 的最佳时间是在服务器几乎没有活动的时 候。在高峰期运行 sp_countmetadata 会导致该系统过程与其它进 程的争用。
假设 Adaptive Server 报告以下信息:
There are 42 user partitions in all database(s), requiring 109 Kbytes of memory.The 'open partitions' configuration parameter is currently set to 110.
2 将 number of open partitions 配置为 110,与 sp_countmetadata 报告的值 相同:
sp_configure "number of open partitions", 110
3 在高峰期查找活动的元数据高速缓存描述符的数目,例如:
sp_monitorconfig "open partitions"
Usage information at date and time: Jun 30 2008 3:15PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
number of open partitions 27 57 51.8 83
0 NULL
在本例中,83 为自上次启动服务器后,已经使用的分区描述符的数 量最大值。
4 将 number of open partitions 配置为 83,再加 10% (8),得到总数 91:
sp_configure "number of open partitions", 91
如果服务器上有许多活动,例如正在添加或删除表,则要定期运行 sp_monitorconfig。当活动描述符数发生变化时,请重置高速缓存大小。 请参见《参考手册:过程》中的 sp_monitorconfig。
number of pre-allocated extents
摘要信息
缺省值 2
值的范围 1–32
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
number of pre-allocated extents 指定在到页管理器的单个行程中分配的扩 充(八页)数。目前,该参数仅被 bcp 用来在进行大量数据复制时提高 性能。缺省情况下,bcp 一次分配两个扩充,并且每次都向日志中写入 分配记录。
设置 number of pre-allocated extents 意味着 bcp 每次需要更多空间时都将 分配指定数量的扩充,并针对该事件写入一条日志记录。
为对象分配的页有可能比实际需要的多,因此,在小型批处理中使用 bcp 时,number of pre-allocated extents 的值应较低。如果在较大的批处理 中使用 bcp,可增加 number of pre-allocated extents 的值,以减少分配页时 的总开销并减少日志记录的数量。
为预先分配的扩充数使用值 32
为 number of pre-allocated extents 使用值 32 对于配置有特殊意义,并且会 影响 Adaptive Server 内部执行的空间分配。如果您将 number of pre- allocated extents 设置为 32,则 Adaptive Server 会为实用程序操作(如 bcp-in 和 select into,两者均使用大规模的空间保留分配方案)保留值得 扩充的整个分配单元。这将大大提升这些实用程序的性能,特别是当您 在多个节点上同时运行这些实用程序时,情况尤为如此。因此,使用值 32 可保证集群的每个节点都能够在其自己的分配单元上独立工作,而不 会相互干扰。
在 Adaptive Server 的早期版本中,number of pre-allocated extents 参数指定 在单个分配调用中为所有大小的表保留的扩充数。
在此版本的 Adaptive Server 中,将只对包含 240 页或更多页的大型表, 对以下命令忽略 number of pre-allocated extents 的值:
• alter table table_name add column_name .. .
• alter table table_name modify column_name .. .
• alter table table_name drop column_name .. .
• alter table lock .. .
• reorg rebuild
当在超过 240 页的表运行这些命令时,Adaptive Server 将保留整个分配 单元(32 个扩充),从而大大提升了性能,特别是当您在多个节点上同 时运行这些命令时,情况尤为如此。
对于少于 240 页的表,将继续为上述命令观察 number of pre-allocated extents 的值,而对于所有大小的表,将继续为所有命令(例如 select into、bcp、 alter table partition)观察该值。
number of Q engines at startup
摘要信息
缺省值 0
值的范围 0 - 127
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 处理器
number of Q engines at startup 是 MQ 所必需的,用于指定在服务器启动时 可以联机的 Q 引擎数。您可能需要增加 max online engines 以适合 max online Q engines 数。
number of remote connections
摘要信息
缺省值 20
值的范围 5–32767
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信
number of remote connections 指定向 Adaptive Server 同时可以互相开放的 逻辑连接的数目。执行 ESP 时,每个同时连到 XP 服务器的连接都使用 一个远程连接。请参见 第 7 章“管理远程服务器”
number of remote logins
摘要信息
缺省值 20
值的范围 0–32767
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信
number of remote logins 控制从 Adaptive Server 到远程服务器的活动用户连 接的数目。执行 ESP 时,每个到 XP 服务器的同时连接最多使用一个远 程登录。将该参数设置为等于或小于 number of remote connections 的值。 请参见 第 7 章“管理远程服务器”
number of remote sites
摘要信息
缺省值 10
值的范围 0–32767
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信
number of remote sites 确定能够同时访问 Adaptive Server 的远程节点的最 大数目。每个 Adaptive Server 到 XP Server 的连接都使用一个远程节点 连接。
number of remote sites 在内部确定能够随时被激活的节点处理器的数目; 所有从单个节点进行的服务器访问均通过单个节点处理器来管理。例如, 如果将 number of remote sites 设置为 5,并且每个节点发出三个远程过程 调用,sp_who 会显示处理这 15 个过程的 5 个节点处理器。请参见
摘要信息
缺省值 500
值的范围 0–32767
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
number of sort buffers 指定为用于在排序期间容纳从输入表中读取的页和 执行索引合并的缓冲区分配的内存量。number of sort buffers 仅用于并行 排序。
Adaptive Server 从表绑定到的高速缓存中分配排序缓冲区。如果高速缓 存未绑定到表,Adaptive Server 将从数据库绑定到的高速缓存中分配排 序缓冲区。如果没有绑定到表或数据库的高速缓存,Adaptive Server 将 从缺省数据高速缓存中分配排序缓冲区。
当您执行以下操作时,将使用并行排序:
• 运行 updates statistics
• 创建索引
请参见《性能和调优系列:查询处理和抽象计划》中的第 10 章“利用 统计信息来提高性能”。
用于 number of sort buffers 的值取决于服务器的页大小。
Sybase 建议您将此参数的设置保持为缺省值,以并行方式创建索引时 除外。
如将此值设置太高,会阻碍非排序进程访问用于执行排序进程的高速缓 存中的缓冲池。
如果配置了很多排序缓冲区,则对大表进行排序时,可能需要更多的过 程高速缓存。如果表中的行都比较短,效果就特别明显,因为每页的行 数会很多。
可通过以下公式估算所需的过程高速缓存量(以字节为单位):
(排序缓冲区数) X (每页行数) X 100
如果没有针对排序缓冲区数配置足够的过程高速缓存,排序可能会失 败,同时出现错误消息 701。发生这种情况时,重新为 Adaptive Server 配置一个较小的排序缓冲区数,然后重试排序。
有关为运算符使用的缓冲区数设置上限的信息,请参见 第 164 页的“ max buffers per lava operator”。
摘要信息
缺省值 25
值的范围 5–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、用户环境
maximum number of user connections 的 上限
number of user connections 设置可同时连接到 Adaptive Server 的最大用户 连接数。它不是指最大进程数;最大进程数不仅仅取决于此参数的值, 还取决于其它系统活动。
每个进程中允许的最大文件描述符数取决于操作系统;请参见所用平台 的配置文档。
可用于 Adaptive Server 连接的文件描述符数目存储在全局变量
@@max_connections 中。可以使用以下语法报告系统可用文件描述符的 最大数目:
select @@max_connections
返回值表示系统允许用于进程的文件描述符的最大数目,再减去开销。 开销随引擎数的增加而增加。有关多重处理如何影响可用于 Adaptive Server 连接的文件描述符数的详细信息,请参见《系统管理指南,卷 2》 中的第 5 章“管理多处理器服务器”。
另外,必须为以下各项保留一定的连接数(也可使用配置参数进行设置):
• 数据库设备,包括镜像设备
• 节点处理器
• 网络监听器
number of user connections + (number of devices * max online engines * 2) +
number of remote sites + max number network listeners 不能大于
@@max_connections 的值。
保留的连接 在配置的这些连接中,有一个是专门保留用于临时管理任务,目的是为 了确保数据库管理员可以连接到 Adaptive Server。保留的连接的总登录 时间为 15 分钟,并且只能分配给具有 sa_role 的用户。15 分钟后, Adaptive Server 会终止连接,以确保有多个数据库管理员进行安装时该 保留的连接的可用性。
Adaptive Server 在客户端使用最后的资源连接到 Adaptive Server 时也会 自动使用这一保留的连接。
如果 Adaptive Server 正在使用保留的连接,则当用户登录 Adaptive Server 时,会出现以下信息性消息:
There are not enough user connections available; you are being connected using a temporary administrative connection which will time out after '15' minutes.Increase the value of th 'number of user connections' parameter
当 Adaptive Server 上的最后一个连接因超时而终止时,Adaptive Server
还将在错误日志中记录类似如下内容的消息:
优化 max number of user connections
没有用于确定每个用户允许的连接数的公式。必须根据系统和用户要求 来估计此数目。还必须考虑到在多用户系统上,通常可在用户之间共享 仅偶尔或暂时需要的连接。下面的进程需要用户连接:
• 运行 isql 的每个用户需要一个连接。
• 应用程序开发人员为每个编辑会话使用一个连接。
• 运行应用程序的用户需要的连接数取决于如何编写应用程序。执行 Open Client 程序的用户使用每个开放的 DB-Librarydbprocess 或 Client-Library™ cs_connection 时都需要一个连接。
注释 Sybase 建议您在系统中增加物理设备或用户时,先估计一下 Adaptive Server 所用的最多连接数,并更新 number of user connections。定期使用 sp_who 来确定 Adaptive Server 上的活动用户 连接数。
共享内存的用户连接 数 — EJB Server
某些其它配置参数(包括 stack size 和 default network packet size)会影响 用于每个用户连接的内存量。
Adaptive Server 使用 number of user connections 的值为 EJB Server 设定共 享内存连接数。因此,如果 number of user connections 为 30,则 Adaptive Server 为 EJB Server 建立 10 个共享内存连接。共享内存连接不是用户连 接的子集,也不能从用户连接数中减去。
若要增加共享内存的用户连接数,必须:
1 将 number of user connections 的值增加到所需共享内存连接数的三倍。
2 重新启动 Adaptive Server。
虽然 number of user connections 是一个动态配置参数,但是要更改共享内 存用户连接数,还必须重新启动服务器。请参见 EJB Server Users Guide
(《EJB Server 用户指南》)。
在 Adaptive Server 版本 12.5.3 ESD #2 中,不会自动为 EJB 保留套接字。 但是,可以启动跟踪标志 1642,以还原早期版本的功能,从而为 EJB 保留三分之一的套接字。启用跟踪标志 1642 以设置 EJB Server。对于此 版本的 Adaptive Server,如果未配置 EJB Server,则可忽略错误日志中 的以下消息:"hbc_ninit: No sockets available for HBC"。
在 Adaptive Server 12.5.3 版及更高版本中,如果 EJB Server 已启用,且 HBC 套接字不可用,将报告 "hbc_ninit: No sockets available for HBC"。如果未启用跟踪标志 1642,请设置该标志,并重新启动 Adaptive Server。如果 EJB Server 未启用,则不报告任何消息,并且 Adaptive Server 将自动禁用为 EJB Server 保留的套接字。
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、查询调优
number of worker processes 为所有同时运行的并行查询指定 Adaptive Server 可以随时使用的工作进程的最大数目。
如果没有足够的内存创建指定数目的工作进程,则 Adaptive Server 在启 动时会发出警告消息。memory per worker process 控制分配给每个工作进 程的内存。
如果尚未为工作线程池中足够多数量的线程配置 number of worker processes,Adaptive Server 将在运行时调整查询计划以使用较少的工作 线程。如果 Adaptive Server 在运行时无法调整查询,则查询将依次重新 编译。但是,如果 alter table 和 execute immediate 命令没有足够多的工作 线程,它们将会被中止。
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
节点特定 |
|
Status |
只读 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
操作系统资源 |
o/s file descriptors 指示为操作系统配置的文件描述符的每个进程的最大数 目。该参数是只读的,并且不能通过 Adaptive Server 进行配置。
许多操作系统允许配置每个进程的可用文件描述符数。请参见操作系统 文档。
可用于 Adaptive Server 连接的文件描述符数(小于 o/s file descriptors 的值) 存储在变量 @@max_connections 中。请参见 第 196 页的“ maximum number of user connections 的上限”。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
object lockwait timing 控制 Adaptive Server 是否收集请求对象上的锁的计时 统计信息。
open index hash spinlock ratio
摘要信息
缺省值 100
值的范围 1–2147483647
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
open index hash spinlock ratio 设置由一个螺旋锁保护的索引元数据描述符 散列表的数目。该参数只用于多重处理系统。
可通过散列表访问属于该表的所有索引描述符。在对该表执行查询时, Adaptive Server 使用散列表在它的 sysindexes 行中查找必要的索引信息。 散列表是 Adaptive Server 用来快速检索信息的内部机制。
通常,不需要更改该参数。但在极少情况下,如果 Adaptive Server 出现 争用散列螺旋锁的情况,则可能需要重置该参数。请参见《性能和调优 系列:使用 sp_sysmon 监控 Adaptive Server》。
有关配置螺旋锁比率的详细信息,请参见《系统管理指南,卷 2》中的 第 5 章“管理多处理器服务器”。
open index spinlock ratio
摘要信息
缺省值 100
值的范围 1–214748364
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
open index spinlock ratio 指定由一个螺旋锁保护的索引元数据描述符的数目。
Adaptive Server 使用螺旋锁保护索引描述符,因为多个进程可以访问该 索引描述符的内容。open index spinlock ratio 只用于多重处理系统。
为该参数指定的值定义每个螺旋锁的索引描述符比率。
如果太多的索引描述符共享一个螺旋锁,则可能会导致螺旋锁争用。使 用 sp_sysmon 获取有关螺旋锁争用的报告。请参见《性能和调优系列: 使用 sp_sysmon 监控 Adaptive Server》。
如果 sp_sysmon 输出指示一个索引描述符螺旋锁争用大于 3%,请尝试 减小 open index spinlock ratio 的值。
请参见《系统管理指南,卷 2》中的第 5 章“管理多处理器服务器”。
摘要信息
缺省值 100
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 元数据高速缓存
open object spinlock ratio 指定由一个螺旋锁保护的对象描述符的数目。 Adaptive Server 使用螺旋锁保护对象描述符,因为多个进程可以访问该 对象描述符的内容。open object spinlock ratio 只用于多重处理系统。
该参数的缺省值是 100;服务器上每 100 个对象描述符配置 1 个螺旋锁。 如果服务器只配置了一个引擎,则不管有多少个对象描述符,Adaptive Server 都只设置一个对象描述符螺旋锁。
如果太多的对象描述符共享一个螺旋锁,则会导致螺旋锁争用。使用 sp_sysmon 获取有关螺旋锁争用的报告。请参见《性能和调优系列:使 用 sp_sysmon 监控 Adaptive Server》。
如果 sp_sysmon 输出指示一个对象描述符螺旋锁争用大于 3%,请尝试 减小 open object spinlock ratio 参数的值。
请参见《系统管理指南,卷 2》中的第 5 章“管理多处理器服务器”。
optimization goal |
||
摘要信息 |
||
缺省值 |
allrows_mix |
|
值的范围 |
allrows_oltp、allrows_dss |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
优化的目标在于,通过一种便利方式使查询需求与最佳优化技术相称, 从而确保最好地利用优化程序的时间和资源。 Adaptive Server 允许用户 配置两个优化目标,您可以在三个层级上指定这些目标:服务器级、会 话级和查询级。
查询级优化目标高于会话级优化目标,会话级优化目标又高于服务器级 优化目标。
利用这些优化目标可以选择一种最适合自己的查询环境的优化策略:
• allrows_oltp — 对纯粹 OLTP 查询最有用的目标。
• allrows_dss — 对中等到高度复杂的可操作 DSS 查询最有用的目标。
optimization timeout limit
摘要信息
缺省值 10
值的范围 0 - 1000
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
optimization timeout limit 指定 Adaptive Server 在优化查询时可以花费的时 间,该时间仅占估计的查询执行时间的一小部分。
值 0 表示没有优化超时。
optimizer level
摘要信息
缺省值 ase_default
值的范围 • ase_current — 启用当前及之前版本中的所有优 化程序更改
• ase_default — 禁用自 1503 ESD #1 版本以来的 所有优化程序更改
• ase1503esd2 — 启用 15.0.3 ESD #2 版本及之前 版本中的所有优化程序更改
• ase1503esd3 — 启用 15.0.3 ESD #3 版本及之前 版本中的所有优化程序更改
Status 动态
显示级别
要求的角色 系统管理员
配置组 Query Tuning
optimizer level 确定查询处理器使用的优化级别。有关优化级别的信息, 请参见《性能和调优系列:查询处理和抽象计划》中的第 7 章“控制 优化”。
optimizer level 的值是字符数据,因此必须使用 0 作为第二个参数(必须 为数字)的占位符。
page lock promotion HWM
摘要信息
缺省值 200
值的范围 2–2147483647
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
page lock promotion HWM (高位值)及 page lock promotion LWM(低位值) 与 page lock promotion PCT(百分比)共同指定 Adaptive Server 尝试从页 锁升级到表锁之前,在页锁定表或索引的单次扫描会话期间所允许的页 锁数目。
当扫描会话期间获取的页锁数目超出 page lock promotion HWM 时, Adaptive Server 将尝试获取表锁。page lock promotion HWM 值不能高于 number of locks。
有关扫描会话和设置页锁升级限制的更详细信息,请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列: 锁定和并发控制》)中的第 2 章“Locking Configuration and Tuning”(锁 定配置和调优)。
page lock promotion HWM 的缺省值适用于大多数应用程序。若要避免表 锁定,您可能需要增加该值。例如,如果您知道含有数千页的所有页锁 定表和数据页锁定表中有 500 页要进行定期更新,则可以将 page lock promotion HWM 设置为 500,从而提高表的并发性。
也可以在对象级配置页锁定表和视图的锁升级。请参见《参考手册:过 程》中的 sp_setrowlockpromote。
可使用 sp_sysmon 了解更改 page lock promotion HWM 对锁升级的数目有 何影响。sp_sysmon 报告排它页锁升级到排它表锁的比例和共享页锁升 级到共享表锁的比例。请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
page lock promotion LWM
摘要信息
缺省值 200
值的范围 2 — page lock promotion HWM 的值
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
page lock promotion LWM (低位值)及 page lock promotion HWM (高位值) 与 page lock promotion PCT 共同指定 Adaptive Server 尝试将页锁升级到表 锁之前,在页锁定表或索引的单次扫描会话期间所允许的页锁数目。
page lock promotion LWM 设置页锁数目,如果低于该数目,Adaptive Server 将不会尝试向对象发出表锁。page lock promotion LWM 必须小于或 等于 page lock promotion HWM。
page lock promotion LWM 的缺省值对于大多数应用程序而言已足够。如果 Adaptive Server 已用完所有的锁(隔离事件除外),则应增加 number of locks。
请参见 Performance and Tuning Series: Locking and Concurrency Control
(《性能和调优系列:锁定和并发控制》)。
也可以在对象级别配置页锁升级。请参见《参考手册:过程》中的
sp_setpglockpromote。
page lock promotion PCT
摘要信息
缺省值 100
值的范围 1–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
如果对象持有锁的数目介于 page lock promotion LWM 和 page lock promotion HWM 之间,page lock promotion PCT 将基于表大小设置页锁的百分比, 高于该值时,Adaptive Server 将尝试获取表锁。
请参见 Performance and Tuning Series: Locking and Concurrency Control
(《性能和调优系列:锁定和并发控制》)中的第 2 章“Locking Configuration and Tuning”(锁定配置和调优)。
page lock promotion PCT 的缺省值适用于大多数应用程序。
也可以在对象级别为页锁定对象配置锁升级。请参见《参考手册:过程》 中的 sp_setpglockpromote。
摘要信息
缺省值 95
值的范围 1–100
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Disk I/O
page utilization percent 用于在页分配期间控制 Adaptive Server 是否要扫 描表的对象分配映射 (OAM),以便查找未使用的页,或只是为表分配 新的扩充。有关 OAM 的详细信息,请参见 第 186 页的“ number of oam trips ”)。可使用 page utilization percent 参数对包含非常大的表的服务器 进行性能优化;它减少了增加新空间所需的时间。
如果将 page utilization percent 设置为 100,Adaptive Server 首先会将所有 OAM 页扫描一遍,以查找分配给对象的未使用页,然后再分配新扩充。 如果为此参数设置的值低于 100,则 Adaptive Server 将 page utilization percent 设置与分配给表的已使用页和未使用页的比率进行比较,如下 所示:
100 * used pages/(used pages + unused pages)
如果 page utilization percent 低于该比率,则 Adaptive Server 将分配新的扩 充而不再搜索未使用的页。
例如,将数据插入一个 10GB 的表,该表具有 120 个 OAM 页,且仅有 一个未使用数据页:
• page utilization percent 设置为 100 将指示 Adaptive Server 扫描全部
120 个 OAM 页以查找未使用的数据页。
• 如果 page utilization percent 设置为 95,则允许 Adaptive Server 给对象 分配一个新的扩充,因为 95 低于已使用的页与已使用和未使用页的 比率。
如果 page utilization percent 值较低,将会产生更多未使用的页。page utilization percent 值较高会减慢在非常大的表中分配页的速度,因为 Adaptive Server 在分配一个新的扩充前要执行 OAM 扫描以查找每个未 使用的页。这样做会增加逻辑和物理 I/O。
如果页分配速度很慢(特别是在执行大量插入时),请降低 page utilization percent 的值,但应在插入数据后重置它。较低的设置会影响服 务器上的所有表,并在所有表中产生未使用的页。
快速批量复制将忽略 page utilization percent 设置,并始终分配新的扩充 直到数据库中没有可用扩充时为止。
partition groups
摘要信息
缺省值 1024
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
摘要信息
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
partition groups 指定可由 Adaptive Server 分配的分区组的最大数目。分区 组是 Adaptive Server 用于控制对表的单独分区的访问的内部结构。在升 级的同时或在 load database 升级期间,使用分区组来取消 Adaptive Server 12.5.x 版及早期版本的分区。
缺省值允许最多 1024 个打开的分区组和最多 2147483647 个打开的分区。 分区的实际数量可能会稍少一些,取决于分区的分组情况。
partition spinlock ratio
摘要信息
缺省值 10
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、元数据高速缓存
对于运行有多个引擎的 Adaptive Server,partition spinlock ratio 设置由一个 螺旋锁保护的分区描述符中的行数。
Adaptive Server 使用分区描述符管理对表分区的访问。每个分区描述符 都存有一个分区的信息(例如,分区的最后一页),进程在访问该分区 时必须使用这些信息。使用 number of open partitions 配置分区描述符。
partition spinlock ratio 的缺省值为每 10 个分区高速缓存设置 1 个螺旋锁。 减少 partition spinlock ratio 的值对 Adaptive Server 的性能影响不大。缺省 设置对大多数服务器都是较为合适的。
请参见《系统管理指南,卷 2》中的第 5 章“管理多处理器服务器”。
摘要信息
缺省值 64MB
有效值 0 - 2147483647
Status 动态
摘要信息
显示级别 Intermediate
要求的角色 系统管理员
配置组 用户环境
pci memory size 设置可插入组件接口 (PCI) 内存池的大小。在 PCI 桥下运 行的所有可插入组件适配器 (PCA) 和 JVM 插件均共享一个专用的 PCI 内存池。如果将 pci memory size 设置为小于缺省值,则 Adaptive Server 将使用缺省大小。
此内存池完全专用于 PCI 桥和任何运行的可插入组件。与所有其它内存 池相同,Adaptive Server 控制此内存池。但是,与其它内存池不同的是, PCI 内存池是在您初始化 PCI 桥时分配的,并且之后将不会增大。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
per object statistic active 控制 Adaptive Server 是否收集每个对象的统计信息。
percent database for history
摘要信息
缺省值 20
有效值 0 - 100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
percent database for history 指定总可用空间在为 js_history 表保留的 sybmgmtdb 中所占的百分比。如果有更多作业正在运行,或要存储已执 行作业的历史记录以便将来查询,请增加 percent database for history。
percent database for output
摘要信息
缺省值 30
有效值 0 - 100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
percent database for output 指定总可用空间在为作业输出保留的 sybmgmtdb 中所占的百分比。如果有更多作业正在运行,而这些作业生成的大量输 出必须加以存储以供将来查询,请增加缺省值。
percent history free |
||
摘要信息 |
||
缺省值 |
30 |
|
有效值 |
0 - 100 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
percent history free 指定保留的空间在应保持可用的 sybmgmtdb 中所占的 百分比。例如,如果您使用缺省值,则 Adaptive Server 将在 sybmgmtdb 已填满 70% 时开始清除最早的历史记录,以便为新记录腾出空间。
percent output free |
||
摘要信息 |
||
缺省值 |
50 |
|
有效值 |
0 - 100 |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
指定保持可用的保留空间在为 Job Scheduler 输出保留的 sybmgmtdb 中所 占的百分比。例如,如果使用缺省值,则 Adaptive Server 将在 sybmgmtdb 已填满 50% 时开始清除最早的历史记录,以便为新记录腾出空间。
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
performance monitoring option 为 BMC DBXray 图形性能监控和诊断工具启 用许可证。
permission cache entries
摘要信息
缺省值 64
值的范围 1–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、用户环境
permission cache entries 确定每个任务的高速缓存保护器的数目,这会增 加用于每个用户连接和工作进程的内存量。
关于用户权限的信息保存在权限高速缓存中。Adaptive Server 检查权限 时,首先在许可高速缓存中查找;如果没有发现所需的权限,则在 sysprotects 表中查找。如果 Adaptive Server 在权限高速缓存中查找所需 信息,并且无需读取 sysprotects,则该进程的速度会明显加快。
但是,仅当 Adaptive Server 检查用户权限而不是授予或撤消权限时,才 在许可高速缓存中查找。授予或撤消权限时,整个许可高速缓存都被刷 新。这是因为授予新权限或撤消权限时,现有权限的时间戳已过时。
如果 Adaptive Server 上的用户频繁执行需要检查用户权限的操作,则增 加 permission cache entries 的值后,性能只能略有提高。这种效果不可能 明显到足以保证广泛调优。
如果 Adaptive Server 上的用户频繁授予或撤消权限,则不要将 permission cache entries 的值设置得很大。用于权限高速缓存的空间会被 浪费,因为高速缓存被每一 grant 和 revoke 命令刷新。
摘要信息
缺省值 0
值的范围 0–1
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
plan text pipe active 确定 Adaptive Server 是否收集查询计划文本。如果同 时启用 plan text pipe active 和 plan text pipe max messages,则 Adaptive Server 收集每个查询的计划文本。可以使用 monSysPlanText 针对所有用 户任务检索查询计划文本。
plan text pipe max messages
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、监控
plan text pipe max messages 确定 Adaptive Server 存储的每个引擎的查询计 划文本消息数。monSQLText 表中的消息总数等于 sql text pipe max messages 的值与正在运行的引擎数的乘积。
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开),2(打开,输出摘要)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
print deadlock information 将死锁信息输出到错误日志。
如果遇到重复出现的死锁,可将 print deadlock information 设置为 1,以便 在错误日志中提供用于跟踪死锁原因的详细信息。然而,将 print deadlock information 设置为 1 可能会降低 Adaptive Server 的性能。因此,只有在尝 试确定死锁的原因时才将 print deadlock information 设置为打开。
可使用 sp_sysmon 输出确定应用程序中是否出现死锁。如果发生死锁, 可将 print deadlock information 设置为 1 以深入了解起因。请参见《性能和 调优系列:使用 sp_sysmon 监控 Adaptive Server》。
如果值为 2,您可将死锁信息的摘要输出到错误日志(与值 1 提供的详 细信息相对)。例如:
Deadlock Id 34: Process (Familyid 0, Spid 70) was waiting for a 'exclusive page' lock on page 10858346 of the 'equineline_job' table in database 18 but process (Familyid 0, Spid 88) already held a 'exclusive page' lock on it.
Deadlock Id 34: Process (Familyid 0, Spid 88) was waiting for a 'exclusive page' lock on page 11540986 of the 'equineline_job' table in database 18 but process (Familyid 0, Spid 70) already held a 'update page' lock on it.
print recovery information
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 备份/恢复
print recovery information 确定在恢复期间,Adaptive Server 在主控台上显 示的信息。在 Adaptive Server 启动和装载数据库转储时,会对每个数据 库执行恢复)。缺省值表示 Adaptive Server 只显示数据库名以及一条表 明恢复正在进行中的消息。值 1 表示 Adaptive Server 会显示在恢复期间 处理的每一单独事务的有关信息,包括该事务是被中止还是已被提交。
过程高速缓存大小 |
||
摘要信息 |
||
缺省值 |
7000 |
|
值的范围 |
7000 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、SQL Server 管理 |
指定过程高速缓存的大小(以 2K 页为单位)。Adaptive Server 在运行 存储过程时使用过程高速缓存。如果服务器发现高速缓存中已经有了一 个过程的副本,则它就不需要从磁盘上读取该过程。Adaptive Server 在 创建存储过程时还使用过程高速缓存中的空间来编译查询。
由于不同应用程序的 procedure cache size 最优值不同,因此重置最优值 可能会提高 Adaptive Server 的性能。例如,如果运行了许多不同的过程 或即席查询,应用程序则使用大量的过程高速缓存,因此可能需要增加 该参数的值。
警告!如果 procedure cache size 太小,Adaptive Server 性能将会降低。
如果您正在升级,procedure cache size 则被设置为升级时原始过程高速 缓存的大小。
procedure deferred compilation
摘要信息
缺省值 1(启用)
值的范围 0 - 1
Status 动态
显示级别
要求的角色 系统管理员
配置组 查询调优
如果启用此参数,对于引用本地变量或存储过程中的临时变量的语句而 言,编译这些语句的操作将推迟到执行时进行,因此在优化这些语句时 可能会使用运行时值,而不是估计值或幻数。
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、监控 |
process wait events 控制 Adaptive Server 是否收集每个任务的每个等待事 件的统计信息。您可以使用 monProcessWaits 获取特定任务的等待信息。
请参见《Transact-SQL 用户指南》中的第 17 章“使用存储过程”。
摘要信息
缺省值 20
值的范围
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员 配置组
prod-consumer overlap factor 会影响优化。Adaptive Server 更改了 group by
算法,因此不能将 set statistics I/O 与并行计划一起使用。
quorum heartbeat interval
缺省值 5
有效值 1 - 60
Status 动态
摘要信息
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
quorum heartbeat interval 指定仲裁心跳间隔的秒数。将 quorum heartbeat interval 设置为较低的值会增加心跳开销,但可加快检测丢失的磁盘链接 的速度,从而对于已设置 I/O 防护或已丢失其 SAN 链接的实例而言,将 能够更快地终止。将 quorum heartbeat interval 设置为较高的数值可减少心 跳开销,但会延迟对丢失的磁盘链接的检测。
quorum heartbeat retries
缺省值 2
有效值 0 - 32767
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
quoted identifier enhancements
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 应用程序功能
quoted identifier enhancement 使 Adaptive Server 能够将带引号的标识符 用于:
• 表
• 视图
• 列名
• 索引名
• 系统过程参数 请参见《参考手册:块》。
read committed with lock
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 锁管理程序
read committed with lock 确定在 select 查询期间,使用事务隔离级别 1(读 提交)的 Adaptive Server 持有的是 DOL 锁定表的行共享锁还是页共享 锁。对于游标,read committed with lock 只适用于声明的只读游标。
对于事务隔离级别 1,所有页锁定表上的 select 查询继续在当前位置持 有页上的锁。DOL 锁定表上的所有可更新的游标也在当前页或行上持 有锁。请参见《性能和调优系列:基础知识》。
摘要信息
缺省值 5
值的范围 1–32767
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 备份/恢复
recovery interval in minutes 设置每个数据库所需时间的最大值(以分钟为 单位),当出现系统故障时,Adaptive Server 将使用该值完成其恢复过 程。恢复过程会以正向或反向滚动处理事务,从检查点进程指明的最早 的活动事务开始。recovery interval in minutes 的值决定恢复过程的工作量 大小。
Adaptive Server 估计恢复事务日志中 6000 行的时间需要 1 分钟的时间。 但是,不同类型的日志记录所需的恢复时间会有所不同。如果将 recovery interval in minutes 设置为 3,则只有当 syslogs 从上一个检查点算 起包含的行多于 18,000 行时检查点进程才将发生更改的页写入磁盘。
注释 恢复间隔对以下事务没有影响:在 Adaptive Server 发生故障时处 于活动状态、长期运行且记入日志内容很少的事务(例如 create index)。 恢复这些事务所花费的时间可能与运行它们所花费的时间相等。为了避 免长时间的延迟,在索引维护操作之后转储每个数据库。
Adaptive Server 使用 recovery interval in minutes 设置以及每个数据库的活 动量来决定何时对每个数据库执行检查点操作。当 Adaptive Server 对数 据库执行检查点操作时,它将所有的脏页(在高速缓存中已被修改的数 据页)写入磁盘。这可能会导致在很短时间内产生大量 I/O,称为“检 查点测试信号”。检查点还执行其它维护任务,其中包括设置了
truncate log on chkpt 选项的数据库的事务日志截断。休眠的检查点进程大 约每分钟“唤醒”一次,检查 truncate log on chkpt 设置和恢复间隔,以 确定是否需要检查点。 图 5-4 显示了 Adaptive Server 在该过程中使用的 逻辑。
图 5-4:检查点进程
休眠
检查点 进程唤醒 并轮询 每个数据库
是否已设置 是
truncate log
on chkpt ?
否
检查点 已执行
否 是否已到 执行检查点
操作的时间?
日志 已截断
是
检查点 已执行
如果应用程序和其用途改变,最好更改恢复间隔。例如,当 Adaptive Server 上的更新活动增加时,您最好缩短恢复间隔。缩短恢复间隔会导 致更频繁地执行检查点进程,检查点测试信号也会随之减弱但更频繁, 同时系统速度略微减慢。但是,恢复间隔设置得太高可能会导致恢复时 间过长。可以通过重新配置 housekeeper freewrite percent 参数,减少由检 查点操作产生的测试信号。请参见 第 135 页的“ housekeeper free write percent ”。有关 recovery interval in minutes 对性能的影响的详细信息,请 参见《性能和调优系列:基础知识》中的第 5 章“内存使用和性能”。
可使用 sp_sysmon 确定特定恢复间隔对系统的影响。请参见《性能和调 优系列:使用 sp_sysmon 监控 Adaptive Server》。
remote server pre-read packets
摘要信息
缺省值 3
值的范围 3–255
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、网络通信
remote server pre-read packets 确定在连接远程服务器期间,一个节点处理 器“预读”的包的数目。
为了减少所需的连接数,两台服务器之间的通信是通过单个节点处理器 管理的。在接收进程准备接收用户进程的数据包之前,节点处理器可以 预读取并跟踪这些数据包。
remote server pre-read packets 的缺省值适用于大多数服务器。增加该值会 占用更多内存;减少该值则可能会减慢服务器之间网络通信的速度。请 参见 第 7 章“管理远程服务器”
restricted decrypt permission
缺省值 0
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Basic
要求的角色 系统安全员
配置组 与安全性相关的参数
restricted decrypt permission 在所有数据库中启用或禁用受限制的解密权 限。必须让 sso_role 来设置此参数。
当 restricted decrypt permission 设置为 0(关闭)时,对加密列的解密权限 与 15.0.2 以前的版本中的作用相同:
• 表所有者或 SSO 会显式授予解密权限。但是,支持解密权限的 with grant 选项。
• 解密权限会通过所有权链隐式授予表所有者和 SSO,并授予任何用 户。例如,如果用户 Fred 拥有 proc1 存储过程,该过程会从加密列 fred.table1.col1 选择数据,如果 Fred 将对 proc1 的 exec 权限授予 Harry,则 Harry 将拥有对 fred.table1.col1 的隐式解密权限。
• 因为表所有者拥有对加密列的隐式解密权限,所以 alter table decrypt
不需要解密权限。
当 restricted decrypt permission 设置为 1(开启)时:
• 只会将解密权限隐式授予 SSO。
• SSO 可以使用 with grant option 参数授予解密权限。这允许 SSO 决定 系统中谁可授予解密权限。例如,如果 SSO 希望 user1 能够授予对 user3.user3_tab 的 decrypt permission,则该 SSO 会发出:
grant decrypt on user3.user3_tab to user1 with grant option
如果使用系统加密口令,则 Sybase 建议您不要对 DBO 授予解密权 限,以保护数据的隐私。通过用户口令访问密钥可防止 DBO 和其他 方访问数据,除非他们具有密钥口令,然而,这对于 DBO 而言,决 定哪些用户应该看到解密数据也十分方便。如果您不使用用户指定口 令来保护密钥和数据,则 SSO 应该保留角色职责以授予解密权限。
• 表所有权不会给予用户隐式解密权限。也就是说,如果使用加密列 创建表,则您对这些列没有解密权限,除非已显式授予您这些权限。
• 不会通过所有权链隐式授予用户解密权限。例如,如果 Fred 拥有 proc1 存储过程,该过程会从加密列 fred.table1.col1 选择数据,如果 Fred 将对 proc1 的 exec 权限授予 Harry,则 Harry 还必须拥有对 fred.table1.col1 的显式解密权限才能看到数据。
• 具有别名的用户会假定他们对其具有别名的用户的权限。同样,如 果具有 sa_role 的用户对任何数据库中的 DBO 具有隐式别名,则会 继承已显式授予 DBO 的任何解密权限。
• alter table decrypt 语句需要解密权限,因为表所有者不具有对表的隐 式解密权限。
如果将 restricted decrypt permission 从 0 更改为 1,则使用隐式解密权限的 当前正在运行的语句将完成;但是,后面的任何使用隐式解密权限的语 句将因以下错误而失败,直至 SSO 授予用户对必要列的解密权限为止:
Msg 10330 "DECRYPT permission denied on object object_name, database database_name, owner owner_name."
如果将 restricted decrypt permission 从 1 更改为 0,则反应显式授予的行会 保留在 sysprotects 系统表中。然而,这些行对于隐式授予的解密权限没 有影响,因为 Adaptive Server 不会检查 sysprotects 以确保解密权限可以 隐式授予。sp_helprotect 只为以下用户显示误导信息:在重新配置系统 之前被授予或撤消显式解密权限的用户,以及现在具有隐式解密权限的 用户。
Sybase 建议您在启用或禁用 restricted decrypt permission 之间切换之前, 撤消授予用户的任何显式解密权限,以保持系统一致性。
有关解密权限的详细信息,请参见《加密列用户指南》。
摘要信息
缺省值 200
值的范围 2–2147483647
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
row lock promotion HWM (高位值)与 row lock promotion LWM(低位值)以 及 row lock promotion PCT 共同指定 Adaptive Server 尝试将行锁升级到表 锁之前,在表或索引的单次扫描会话期间所允许的最大行锁数目。
如果扫描会话期间获取的锁数目超过了 row lock promotion HWM, Adaptive Server 将试图获取表锁。lock promotion HWM 值不能高于 number of locks 值。
请参见 Performance and Tuning Series: Locking and Concurrency Control
(《性能和调优系列:锁定和并发控制》)中的第 2 章“Locking Configuration and Tuning”(锁定配置和调优)。
row lock promotion HWM 的缺省值适用于大多数应用程序。若要避免表锁 定,您可能需要增加“row lock promotion HWM”的值。例如,如果含 有数千行的表中有 500 行要进行定期更新,则可以将 row lock promotion HWM 设置为 500 左右,从而提高表的并发性。
也可以在对象级别配置行锁升级。请参见《参考手册:过程》中的
sp_setpglockpromote。
row lock promotion LWM
摘要信息
缺省值 200
值的范围 2 — row lock promotion HWM 的值
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
row lock promotion LWM (低位值)与 row lock promotion HWM (高位值) 以及 row lock promotion PCT 共同指定 Adaptive Server 尝试将行锁升级到 表锁之前,在表或索引的单次扫描会话期间所允许的行锁数目。
row lock promotion LWM 设置锁的数目,低于该数值时 Adaptive Server 不 会尝试在对象上获取表锁。row lock promotion LWM 必须小于或等于 row lock promotion HWM。
row lock promotion LWM 的缺省值适用于大多数应用程序。如果 Adaptive Server 已用完所有的锁(隔离事件除外),则应增加 number of locks。
请参见 Performance and Tuning Series: Locking and Concurrency Control
(《性能和调优系列:锁定和并发控制》)。
也可以在对象级别配置锁升级。请参见《参考手册:过程》中的
sp_setpglockpromote。
row lock promotion PCT
摘要信息
缺省值 100
值的范围 1–100
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 锁管理程序、SQL Server 管理
如果对象持有锁的数目介于 row lock promotion LWM(低位值)和 row lock promotion HWM(高位值)之间,row lock promotion PCT 将基于表中的行 数设置行锁的百分比,高于该值时,Adaptive Server 将尝试获取表锁。
row lock promotion PCT 的缺省值适用于大多数应用程序。
有关设置锁升级限制的详细信息,请参见 Performance and Tuning Series: Locking and Concurrency Control(《性能和调优系列:锁定和并 发控制》)中的第 2 章“Locking Configuration and Tuning”(锁定配 置和调优)。
也可以在每个对象的级别配置行锁升级。请参见《参考手册:过程》中 的 sp_sterowlockpromote。
rtm thread idle wait period
摘要信息
缺省值 600
值的范围 600 - 4026531839
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
rtm thread idle wait period 定义 Adaptive Server 使用的本机线程在没有任何 工作时等待的时间(以秒为单位)。达到为本机线程设置的等待时间后, 该线程自动消失。
runnable process search count
摘要信息
缺省值 2000(缺省值为 3,用于 Cluster Edition)
值的范围 0 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
注释 runnable process search count 仅在将 Adaptive Server 配置用于进程 内核模式时才起作用;它在线程内核模式下不起作用。可改用 alter thread pool pool_name ,其中 idle timeout = n 。
runnable process search count 指定引擎在查找可运行的任务时,循环多少 次后才将 CPU 交还操作系统。
只要引擎上的某个任务完成或超过其分配的时间,Adaptive Server 引擎 就会检查运行队列中的可运行任务。有时,运行队列中会没有任务。这 时,引擎可以将 CPU 归还操作系统或继续检查是否有要运行的任务。将 runnable process search count 设置为较高值,将导致引擎循环更多次,因 此也就占用更长的 CPU 时间。将 runnable process search count 设置为较 低值将使引擎早些交还 CPU。
如果计算机是依靠辅助线程执行 I/O 的单处理器,通过设置 runnable process search 执行网络 I/O、磁盘 I/O 或其它操作系统任务,可在一定 程度上提高性能。如果客户端(如批量复制操作)运行在使用辅助线程 的单 CPU 服务器上,则您可能需要允许服务器和客户端访问 CPU。
注释 如果遇到性能问题,请尝试将 runnable process search count 设置 为 3。
对于运行在不使用辅助线程的单处理器计算机以及多处理器计算机上的
Adaptive Server,使用缺省值应可提供良好的性能。
当 runnable process search count 的值为 3 时,Cluster Edition 能够更好地 与同一计算机上运行的其它进程共享系统 CPU。但是,如果将 runnable process search count 设置为 3,并且 Adaptive Server 正在以独立进程方式 运行,用户可能会遇到服务器响应时间延迟的情况。在这种情况下,请 将 runnable process search count 重置为 2000。
使用 sp_sysmon 可确定 runnable process search count 参数如何影响 Adaptive Server 对 CPU 周期的使用,如何影响引擎将 CPU 移交给操作系统,以 及如何影响对网络检查的阻塞。请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
runnable process search count 与 idle timeout
runnable process search count 和 alter thread pool ...idle timeout 都指示
Adaptive Server 如何查找工作:
• runnable process search count 指定 Adaptive Server 用于查找工作的循 环数,它是一个全服务器范围的参数。
• alter thread pool ...idle timeout 指定 Adaptive Server 用于查找工作的时 间,此参数可根据单个线程池进行调优。idle timeout 在速度不同的处 理器之间更加一致。
sampling percent |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 100% |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统或数据库管理员 |
|
配置组 |
查询调优 |
sampling percent 是采样百分比的数值,例如 5 表示 5%,10 表示 10%, 依此类推。
若要减少 I/O 争用和资源,请运行使用采样方法的 update statistics,在维 护窗口较小但数据集较大的情况下,它可以减少 I/O 和时间。如果正在 更新的是处于连续使用状态、被截断并重新填充的大型数据集或表,则 需要执行一次统计采样,以减少时间和 I/O 的大小。
请谨慎使用采样,因为结果并非完全准确。请针对 I/O 的节省来平衡对 直方图值的更改。
尽管数据集的采样可能不完全精确,但通常情况下,直方图和密度值还 是在合理的可接受范围内。
在确定是否使用采样时,请考虑数据集的大小、所面临的时间约束以及 直方图生成的结果是否达到需要的精度。
采样时使用的百分比取决于您的需要。请测试不同的百分比,直到得到 一个反映特定数据集的最精确信息的结果。
统计信息保存在系统表 systabstats 和 sysstatistics 中。
安全缺省登录 |
||
缺省值 |
0 |
|
值的范围 |
0(后接另一参数,指定缺省登录) |
|
Status |
动态 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统安全员 |
|
配置组 |
与安全性相关的参数 |
secure default login 为预先进行过鉴定而在 master..syslogins 中没有登录名 的所有用户指定缺省登录名。
可使用以下语法来设置缺省安全登录名:
sp_configure "secure default login", 0, default_login_name
其中:
• secure default login — 为参数名。
• 0 — 为必需参数,因为 sp_configure 的第二个参数必须是数值。
• default_login_name 是 Adaptive Server 不知道但已通过安全性机制鉴 定的用户的缺省登录名。该登录名必须是 master..syslogins 中的有效 登录名。
select for update |
||
摘要信息 |
||
缺省值 |
0(关闭) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
应用程序功能 |
select for update 使 Adaptive Server 可以针对同一事务内的后续更新以及 可更新的游标以排它方式锁定行,从而防止其它并发任务更新这些行及 阻止后续更新
请参见《Transact-SQL 用户指南》中的“查询:从表中选择数据”。
select on syscomments.text
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统安全员
配置组 与安全性相关的参数
select on syscomments.text 通过限制 syscomments 表中 text 列上的 select 权限, 启用数据库对象的文本保护。缺省值会将 select 权限设置为“public”。如 果将此值设置为 0,可将 select 权限限于对象所有者和系统管理员。
摘要信息
缺省值 1(打开)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 网络通信
send doneinproc tokens 允许或禁止 Adaptive Server 发送 doneinproc 包(在 存储过程中执行的每个 select 语句之后发送的 TDS 消息)。send doneinproc tokens 取代 dbcc tune ‘doneinproc’ 和跟踪标志 292。当前运行的 查询将立即记下选项中的任何更改。
大多数情况下,将 send doneinproc tokens 设置为 1 是安全的。但是,某 些存储过程是使用 CT-Lib 中的异步命令运行的,使用值 0 可能会导致某 些 CT-Lib 应用程序中出现状态机错误。
session migration timeout
缺省值 600
有效值 0 - 32767
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
session migration timeout 指定客户端可用于通过连接到目标实例完成迁移 的时间量。如果客户端未在分配的时间内迁移到目标实例,则 Adaptive Server 将连接失败。
session tempdb log cache size
摘要信息
缺省值 逻辑页大小(字节)
值的范围 逻辑页大小最大为 2147483647
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 用户环境
session tempdb log cache size 指定每个会话的 tempdb 日志高速缓存的大小。 Adaptive Server 使用 tempdb 日志高速缓存为涉及 tempdb 对象的会话缓 冲用户事务日志记录。session tempdb log cache 的大小由 Adaptive Server 页大小决定。为 session tempdb log cache size 配置合理的大小有助于防止 因会话必须刷新 tempdb 用户日志高速缓存而引起环境切换。
Adaptive Server 为每个用户连接包含两个日志高速缓存:会话 tempdb 日 志高速缓存和用户日志高速缓存,后者由 user log cache size 参数确定。
shared memory starting address
摘要信息
缺省值 0
值的范围 因平台而异
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 物理内存
shared memory starting address 确定 Adaptive Server 启动其共享内存区域 的虚拟地址。
通常不需要重新配置 shared memory starting address。只有在咨询 Sybase
技术支持部门后才能执行此操作。
number of worker processes、max parallel degree 和 max scan parallel degree 控制服务器级的并行查询处理。使用 set 命令的 parallel_degree、 process_limit_action 和 scan_parallel_degree 选项可以限制会话级的并行优 化,使用 select 命令的 parallel 关键字可以限制特定查询的并行优化。
size of auto identity column
摘要信息
缺省值 10
值的范围 1 - 38
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
size of auto identity column 设置使用 sp_dboption auto identity 和 unique auto_identity index 选项自动创建的 IDENTITY 列的精度。
可插入到 IDENTITY 列的最大值为 10 精度 -1。IDENTITY 列达到最大值 后,以后的所有 insert 语句都将返回错误并终止当前事务。
如果达到了 IDENTITY 列的最大值,可通过用 alter table 命令执行修改操 作来增加该值。有关示例,请参见《Transact-SQL 用户指南》。
您还可以使用 create table 命令创建一个与旧表相同的新表,但对新表中 的 IDENTITY 列使用更高的精度。创建新表后,可使用 insert 命令或 bcp 将数据从旧表复制到新表。
size of global fixed heap
摘要信息
缺省值 150 页(32 位版本)
300 页(64 位版本)
最小值 10 页(32 位版本)
20 页(64 位版本)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Java 服务、内存使用
size of global fixed heap 指定用于内部数据结构和满足其它需要的内存空间。 如果更改 size of the global fixed heap,请将总逻辑内存更改相同的数量。
size of process object heap
摘要信息
缺省值 1500 页(32 位版本)
3000 页(64 位版本)
最小值 45 页(32 位版本)
90 页(64 位版本)
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 Java 服务、内存使用
size of process object fixed heap 指定使用 Java VM 的所有进程的总内存空间。
如果更改 size of process object fixed heap,请将 total logical memory 更改相 同的数量。
size of shared class heap
摘要信息
缺省值 1536 页(32 位版本)
3072 页(64 位版本)
最小值 650 页(32 位版本)
1300 页(64 位版本)
Status 动态
显示级别 Basic
要求的角色 系统管理员
配置组 Java 服务、内存使用
size of shared class heap 指定调入 Java VM 的所有 Java 类的共享内存空间。 Adaptive Server 在全服务器范围内为用户定义的和系统提供的 Java 类保 留共享的类堆。
如果更改 size of shared class heap,请将 total logical memory 更改相同的 数量。
size of unilib cache |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0 - 2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、Unicode |
size of unilib cache 指定除最小开销之外的已使用内存(以字节计算,向 上舍入到最接近的 1K),它足以装载一份最大 Unilib 转换表与最大 Unilib 排序表。亚洲客户如果想通过基于 Unicode 的转换支持其它字符 集,就需要增加 size of unilib cache;每增加一个字符集,该参数就需要 增加 100K。
sproc optimize timeout limit
摘要信息
缺省值 40
值的范围 0 - 4000
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 Query Tuning
sproc optimize timeout limit 可将 Adaptive Server 在优化存储过程方面花费 的时间指定为估计的执行时间的一部分。
SQL batch capture |
||
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
监控 |
SQL batch capture 控制 Adaptive Server 是否收集 SQL 文本。如果同时启 用 SQL batch capture 和 max SQL text monitored,则 Adaptive Server 会针对 每个用户任务收集每个批处理的 SQL 文本。
SQL Perfmon Integration(仅限 Windows)
摘要信息
缺省值 1(打开)
有效值 0(关闭),1(打开)
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
SQL Perfmon Integration 允许或禁止从 Windows 性能监视器监控 Adaptive Server 统计信息。
Adaptive Server 必须注册为 Windows 服务,才能支持监控器集成。使用 Sybase for Windows 程序组中的服务管理器启动 Adaptive Server 时,会 自动进行此注册,这是在使用 Sybase 安装程序或 syconfig 实用程序创建 Adaptive Server 时的缺省配置。
15.7 版的 sybperf 公开一组 Adaptive Server 计数器,更加有助于监控
Adaptive Server 性能。
摘要信息
缺省值 因平台而异
值的范围 最小值(因平台而异)— 1000000;缺省值的若 干倍
Status 静态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
sql server clock tick length 指定服务器的时钟周期的持续时间(以微秒计)。 缺省值和最小值都随平台而定。Adaptive Server 将值向上舍入到 n 的偶 数倍,其中 n 是因平台而异的时钟周期缺省值。使用 sp_helpconfig 或 sp_configure 查找 sql server clock tick length 的当前值。
在与某些 CPU 密集型任务混用的应用程序中,减小 sql server clock tick length 的值有以下作用:
• 对 I/O 密集性任务有所帮助 — 此时值为 20,000 是较为合理的。如果 缩短时钟周期长度,在单位时间内,CPU 密集型任务超过引擎上的 分配时间的频率将会增加,这样,其它任务便有更多的机会访问 CPU
• 会少量地增加响应次数 — Adaptive Server 在每个时钟周期运行一次 其服务任务。缩短时钟周期长度意味着服务任务在单位时间内的运 行频率将会增加。
增加 sql server clock tick length 对 CPU 密集型任务有利,因为它们在两次 环境切换之间可运行更长时间。对主要为 CPU 密集型的应用程序来说, 最大值 1,000,000 可能是合适的。但对所有 I/O 密集型任务却不适合。可 通过调优 cpu grace time (请参见 第 92 页的“ cpu grace time ”)和 time slice (请参见 第 246 页的“ time slice ”)来改善这种情况。
注释 更改 sql server clock tick length 的值可能会对 Adaptive Server 性能 产生极大影响。重置此值前,请先咨询 Sybase 技术支持部门。
sql text pipe active |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0–1 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
监控 |
sql text pipe active 控制 Adaptive Server 是否收集 SQL 文本。如果启用此 选项并设置 sql text pipe max messages,则 Adaptive Server 收集每个查询 的 SQL 文本。使用 monSysSQLText 为所有用户任务检索 SQL 文本。
sql text pipe max messages
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、监控
sql text pipe max messages 指定 Adaptive Server 存储的每个引擎的 SQL 文 本消息数。monSQLText 表中的消息总数等于 sql text pipe max messages 的 值与正在运行的引擎数的乘积。
摘要信息 |
||
缺省值 |
4096 |
|
值的范围 |
0–2147483647 |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、用户环境 |
stack guard size 设置堆栈保护区的大小(以字节为单位),堆栈保护区 是每个堆栈末尾可配置大小的溢出堆栈。Adaptive Server 在启动时为每个 用户连接和工作进程分配一个堆栈。这些堆栈紧挨着位于同一内存区域 中,在每个堆栈的末端有一保护区。每个堆栈保护区的末尾是保护字, 它是一个具有已知模式的 4 字节结构。 图 5-5 阐释了进程如何破坏堆栈 保护字。
图 5-5:将破坏堆栈保护字的进程
堆栈 2
保护区
堆栈 2
堆栈保护字
堆栈 1
保护区
进程溢出堆栈区,将要破坏 堆栈保护字
堆栈 1
进程开始 执行
Adaptive Server 进行定期检查,查看用户连接的堆栈指针是否进入了和 该用户连接的堆栈相关联的堆栈保护区。如果已经进入,Adaptive Server 则会中止事务,将控制权返回生成该事务的应用程序,并生成错 误 3626:
The transaction was aborted because it used too much stack space。Either use sp_configure to increase the stack size, or break the query into smaller pieces. spid: %d, suid: %d, hostname: %.*s, application name:
%.*s
Adaptive Server 还定期检查保护字模式,查看它是否发生了更改;如果 已更改,这说明进程已溢出堆栈界限。发生这种情况时,Adaptive Server 将以下消息输出到错误日志中,然后关闭:
kernel: *** Stack overflow detected: limit: 0x%lx sp: 0x%lx kernel: *** Stack Guardword corrupted
kernel: *** Stack corrupted, server aborting
在第一个消息中,“limit”是堆栈保护区末端的地址,“sp”是堆栈指 针的当前值。
另外,Adaptive Server 还定期检查堆栈指针,查看它是否完全位于指针 进程的堆栈和堆栈保护区之外。如果在堆栈和堆栈保护区之外,则即使 保护字没有被破坏,Adaptive Server 也会关闭。发生这种情况时, Adaptive Server 将以下消息输出到错误日志中:
kernel: *** Stack overflow detected: limit: 0x%lx sp: 0x%lx kernel: *** Stack corrupted, server aborting
stack guard size 的缺省值适用于大多数应用程序。但是,如果发生了由 于堆栈保护字破坏或堆栈溢出而导致服务器关闭这一情况,则将 stack guard size 的值增加 2K。每个已配置的用户连接和工作进程都有一个堆 栈保护区;因此,如果增加 stack guard size,就会消耗该值乘以已配置 的用户连接数和工作进程数所得的内存量。
不要通过增大 stack guard size 来避免堆栈溢出问题,应考虑增大 stack size (请参见 第 236 页的“堆栈大小”)。堆栈保护区用作溢出区,而 不是对常规堆栈的扩充。
Adaptive Server 通过增加 stack size 和 stack guard size 参数的值,为每个 任务分配堆栈空间。stack guard size 的值必须配置为 2K 的倍数。如果指 定的值不是 2K 的倍数,则 sp_configure 检验例程会将此值取整到下一个 最高倍数。
摘要信息 |
||
缺省值 |
因平台而异 |
|
值的范围 |
最小值(因平台而异)— 2147483647 |
|
Status |
静态 |
|
显示级别 |
Basic |
|
要求的角色 |
系统管理员 |
|
配置组 |
用户环境 |
stack size 指定 Adaptive Server 上每个用户进程使用的执行堆栈的大小(以 字节为单位)。要查找所用平台的 stack size 值,请使用 sp_helpconfig 或 sp_configure。stack size 必须配置为 2K. 的倍数。如果指定的值不是 2K 的倍数,则 sp_configure 检验例程会将此值取整到下一个最高倍数。
执行堆栈 是 Adaptive Server 内存区域。在此区域中,用户进程跟踪其进 程环境并存储本地数据。
某些查询可能会导致堆栈溢出。例如,具有相当长的 where 子句、较长 的选择列表、深层嵌套的存储过程以及使用 holdlock 进行的多次选择和 更新的查询。发生堆栈溢出时,Adaptive Server 将输出错误消息并回退 事务。有关特定错误消息的详细信息,请参见 第 234 页的“ stack guard size ”以及《故障排除和错误消息指南》。
用来解决堆栈溢出问题的两种选择是,将较大查询分成若干较小查询和 增加 stack size。更改 stack size 会影响每个已配置用户连接和工作进程所 需的内存量。请参见 第 247 页的“ total logical memory ”。
如果某些查询超过了执行堆栈的大小,最好将它们重写为一系列较小查 询,如果此类查询的数量很少或很少运行,则更应如此。
如果不实际运行查询,则无法确定该查询所需堆栈空间的大小。启动时 对每个用户连接和工作进程所需的堆栈空间进行预分配。
因此,确定相应的 stack size 值只能根据经验进行。使用 stack size 的缺省 值测试一下最大且最复杂的查询。如果运行后没有生成错误消息,则缺 省值大概就可以使用了。如果生成了错误消息,则首先应将 stack size 稍 微增大 (2K)。重新运行查询,看看增加的量是否足够。如果不够,则继 续增加 stack size,直到运行查询后不生成错误消息时为止。
如果使用 CIS,或数据库中启用了 Java,而且要使用调用 JDBC 的方法, Sybase 推荐增加 50% 的缺省值。如果当前未使用 JDBC 或 CIS,标准缺 省值通常就足够了。
start mail session(仅限 Windows)
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 扩展存储过程
start mail session 可在 Adaptive Server 启动时启用或禁用 Adaptive Server
邮件会话的自动启动。
如果参数值为 1,则在下一次 Adaptive Server 启动时 Adaptive Server 将 启动一个邮件会话。如果参数值为 0,则下一次重新启动时 Adaptive Server 将不会启动一个邮件会话。
如果 start mail session 为 0,则可以使用 xp_startmail 系统 ESP 来明确启动
Adaptive Server 邮件会话。
设置 start mail session 之前,必须通过为 Adaptive Server 创建一个邮箱和 邮件配置文件来准备 Windows 系统。然后,创建用于 Sybmail 的 Adaptive Server 帐户。请参见《适用于 Windows 的配置指南》。
start xp server during boot
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 静态
显示级别 要求的角色
配置组 扩展存储过程
start xp server during boot 确定当 Adaptive Server 启动时,是否启动 XP Server。
如果设置为 1,则在 Adaptive Server 启动时,将启动 XP Server。如果将 start xp server during boot 设置为 0,则在您运行 xp_cmdshell 之前,XP Server 将不会启动。
startup delay |
||
摘要信息 |
||
缺省值 |
0(关闭) |
|
值的范围 |
0(关闭),1(打开) |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
Query Tuning |
startup delay 控制在服务器启动过程中何时启动 RepAgent。缺省情况下, RepAgent 与 Adaptive Server 同时启动。Adaptive Server 将在错误日志中 写入一条消息以说明等待时间。
statement cache size
摘要信息
缺省值 0
有效值 高速缓存大小(以 2K 页为单位)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、SQL Server 管理
statement cache size 可增加服务器分配的过程高速缓存内存,并限制过程 高速缓存池中用于高速缓存的语句的内存量。
注释 如果启用语句高速缓存,您必须在其自身的批处理中配置 set chained on/off。
由于高速缓存的语句将转换为轻量存储过程,因此进行语句高速缓存需 要额外的可用对象描述符。
statement pipe active
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
statement pipe active 控制 Adaptive Server 是否收集语句级别统计信息。如 果同时启用 statement pipe active 和 statement pipe max messages,则 Adaptive Server 收集每个查询的语句级统计信息。使用 monSysStatement 来检索所有已执行语句的统计信息。
statement pipe max messages
摘要信息
缺省值 0
值的范围 0–2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 内存使用、监控
statement pipe max messages 确定 Adaptive Server 存储的每个引擎的语句 统计消息数。monSQLText 表中的消息总数等于 sql text pipe max messages 的值与正在运行的引擎数的乘积。
statement statistics active
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 监控
statement statistic active 控制 Adaptive Server 是否收集监控表语句级别统 计信息。使用 monProcessStatement 来获取特定任务的语句统计信息。
streamlined dynamic SQL
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 应用程序功能
quoted identifier enhancement 允许语句高速缓存存储动态 SQL 语句 请参见《性能和调优系列:基础知识》中的“内存使用和性能”。
strict dtm enforcement
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 静态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理
strict dtm enforcement 决定 Adaptive Server 事务协调服务是否严格实施分 布式事务的 ACID 属性。
在 Adaptive Server 只应为其它支持事务协调的 Adaptive Server 传播和协 调事务的环境中,将 strict dtm enforcement 设置为打开。如果事务试图 更新不支持事务协调服务的服务器中的数据,Adaptive Server 将中止该 事务。
在异构环境中,可能需要使用不支持事务协调的服务器,包括早期版本 的 Adaptive Server 和使用 CIS 配置的非 Sybase 数据库存储。在这些情况 下,请将 strict dtm enforcement 设置为关闭,以允许 Adaptive Server 将事 务传播到遗留 Adaptive Server 和其它数据存储。但是,这样并不能确保 这些服务器的远程工作随原始事务回退或提交。
suppress js max task message
摘要信息
缺省值 0(关闭)
有效值 0(关闭),1(打开)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 应用程序功能
strict dtm enforcement 禁止 Adaptive Server 将 Job Scheduler js maxtask 错误 消息输出到错误日志。
suspend audit when device full
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
suspend audit when device full 确定审计设备完全填满时 Adaptive Server 的 行为。
注释 如果有两个或多个审计表,每个表都位于非主设备的单独设备上, 而且每个审计表段都有阈值过程,则审计设备应绝不会充满。仅当阈值 过程运行不正常时,才会发生“充满”情况。
选择以下值之一:
• 0 — 表示当前审计表充满时,将截断下一个审计表,并开始将其用 作当前审计表。如果将 suspend audit when device full 设置为 0,则可 确保审计进程绝不会被挂起。但是,如果旧的审计记录没有存档, 就有可能丢失。
• 1 — 将导致审计事件的审计进程和所有用户进程挂起。若要恢复正 常操作,系统安全员必须登录并将一个空表设置为当前审计表。在 此期间,系统安全员不能进行正常审计。如果系统安全员的操作在 正常情况下会生成审计记录,Adaptive Server 会将一条错误消息和 有关该事件的信息发送到错误日志中。
摘要信息
缺省值 0
有效值 0、1024 - 65535 或系统限制
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 网络通信
syb_sendmsg port number 指定 Adaptive Server 使用 sp_sendmsg 或
syb_sendmsg 将消息发送到 UDP(用户数据报协议)端口时所用端口号。
如果配置了多个引擎,则每个引擎使用一个端口号,从指定的端口号开 始依次连续编号。如果端口号设置为缺省值 0,那么 Adaptive Server 指 派端口号。
注释 Windows 不支持将消息发送到 UDP 端口。
系统安全员必须将 allow sendmsg 配置参数设置为 1,才能允许将消息发 送到 UDP 端口。若要启用 UDP 消息传送,系统管理员必须将 allow sendmsg 设置为 1 。请参见 第 77 页的“ allow sendmsg ”。有关 UDP 消 息传送的详细信息,请参见《参考手册:过程》中的 sp_sendmsg。
sysstatistics flush interval
摘要信息
缺省值 0
有效值 0 - 32767
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 SQL Server 管理
sysstatiscts flush interval 确定刷新 sysstatistics 的时间间隔长度(以分钟为 单位)。
Adaptive Server 通过任何 DML 语句,动态维护表中修改的行数和列数 统计信息,并依据 sysstatistics flush interval 的值刷新它们。
由于这些统计信息较为准确,因此 Adaptive Server 将它们用于查询优化。 datachange 功能确定:自上次执行 update statistics 以来,在表级、列级 或分区级更改的数据的量,并启动对象的统计信息更新。
在服务器正常关闭期间,这些内存中的统计信息始终都会刷新到磁盘 上。可以配置 sysstatistics flush interval,通过管家任务定期将这些内存 中的统计信息刷新到磁盘。将 sysstatistics flush interval 设置为 0 会禁用 此管家任务。
systemwide password expiration
摘要信息
缺省值 0
值的范围 0–32767
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
systemwide password expiration 设置口令在更改后保持有效的天数。如果 将 systemwide password expiration 设置为 0,则口令不会过期。
口令将在经过指定的天数后过期。例如,如果您在 2007 年 8 月 1 日上
午 10:30 创建一个新登录名,其口令有效期为 30 天,那么该口令将在
2007 年 8 月 31 日上午 10:30 过期。
如果从最后一次更改某帐户的口令到现在的时间间隔已大于
number_of_days,则认为该帐户的口令已到期。
如果过期前的剩余天数小于 systemwide password expiration 值的 25% 或 小于 7 天(以较大的为准),则每次用户登录时都会显示一条消息,指 出过期前的剩余天数。在到期之前的任何时候,用户都可以更改自己的 口令。
某一帐户的口令到期时,用户仍然可以登录到 Adaptive Server。但在使 用 sp_password 更改其口令之前,该用户不能执行任何命令。帐户处于 仅 sp_password 模式时,如果系统安全员更改用户口令,则该帐户将在 指派新口令后恢复正常。
此限制仅适用于口令到期后建立的登录会话。口令到期时登录的用户在 下一次登录之前不会受到影响。
tape retention in days
摘要信息
缺省值 0
值的范围 0–365
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 备份/恢复
tape retention in days 指定每个磁带在用于数据库或事务日志转储后要保 留的天数。设置此参数可防止意外覆盖转储磁带。
例如,如果将 tape retention in days 设置为 7 天,当您试图在距离上次磁 带转储事件不到 7 天的时间使用该磁带时,Backup Server 会发出一条警 告消息。
执行转储命令时,可以使用 with init 选项覆盖警告。此操作将导致磁带 被覆盖,磁带上的全部数据都将丢失。
dump database 和 dump transaction 命令都提供 retaindays 选项,该选项 可针对特定转储覆盖 tape retention in days 值。请参见《系统管理指南, 卷 2》的第 12 章“备份和恢复用户数据库”。
tcp no delay |
||
摘要信息 |
||
缺省值 |
1(打开) |
|
有效值 |
0(关闭),1(打开) |
|
Status |
静态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
网络通信、操作系统资源 |
tcp no delay 控制 TCP(传输控制协议)包批处理。缺省值为表示不对 TCP 包进行批处理。
TCP 通常将小的逻辑包成批放入单个较大的物理包,并用尽可能多的数 据填充物理网络框架,这样可以提高终端模拟环境中的网络吞吐量,在 该环境中,用户通常通过网络发送键击。
但是,禁用 TCP 包批处理,可能对使用小 TDS (Tabular Data Stream) 包 的应用程序有益。
注释 禁用 TCP 包批处理意味着不管包的大小如何都会被发送出去; 这样就增加了网络通信量。
text prefetch size |
||
摘要信息 |
||
缺省值 |
16 |
|
有效值 |
0–65535 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
网络通信 |
text prefetch size 限制可被预取到现有缓冲池中的 text、unitext 和 image 数 据的页数。Adaptive Server 只预取由 Adaptive Server 12.x 创建的或用 dbcc rebuild_text 升级的 text、unitext 和 image 数据。
摘要信息 |
||
缺省值 |
100 |
|
值的范围 |
50–1000 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
time slice 设置 Adaptive Server 调度程序允许任务运行的毫秒数。如果 time slice 设置得太低,Adaptive Server 将消耗太多时间用于任务间的切 换,这将增加响应时间。如果设置得太高,CPU 密集型任务则可能独占 引擎,进而延长响应时间。缺省值允许每个任务运行 1/10 秒,然后将 CPU 让给另一任务。
请参见《性能和调优系列:基础知识》中的第 3 章“使用引擎和 CPU”。
使用 sp_sysmon 确定 time slice 如何影响 Adaptive Server 引擎的主动放弃。 请参见《性能和调优系列:使用 sp_sysmon 监控 Adaptive Server》。
total data cache size
摘要信息
缺省值 0
值的范围 0 - 2147483647
Status 已计算
显示级别 Basic
要求的角色 系统管理员
配置组 高速缓存管理器、内存使用
total data cache size 报告当前可供数据、索引和日志页使用的内存量(以 千字节为单位)。该参数不是由用户直接配置的,而是通过计算得来的。
可供数据高速缓存使用的内存量会受一些因素的影响,包括:
• 计算机实际可用内存量的大小
• 设置的以下参数的值:
• total logical memory
• number of user connections
• total procedure cache percent
• number of open databases
• number of open objects
• number of open indexes
• number of devices
其它参数也会影响可用内存量,但影响的程度会小一些。
有关 Adaptive Server 如何分配内存以及数据高速缓存的信息,请参见 第 70 页的“配置参数”。
摘要信息
缺省值 不适用
值的范围 不适用
Status 只读
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、物理内存
total logical memory 显示 Adaptive Server 当前配置的总逻辑内存。总逻辑 内存是 Adaptive Server 当前配置所使用的内存量。total logical memory 显 示可供使用所必需的内存,但该内存不一定在任何给定时刻都被使用。 有关给定时刻使用的内存量的信息,请参见 total physical memory。不能 使用 total logical memory 设置任何内存配置参数。
总物理内存 |
||
摘要信息 |
||
缺省值 |
不适用 |
|
值的范围 |
不适用 |
|
Status |
只读 |
|
显示级别 |
Intermediate |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用 |
total physical memory 是只读配置参数,它显示 Adaptive Server 当前配置的 总物理内存。总物理内存是 Adaptive Server 在给定时刻使用的内存量。 对 Adaptive Server 进行适当配置,使 max memory 的值大于 total logical memory 的值, total logical memory 的值大于 total physical memory 的值。
transfer utility memory size
摘要信息
缺省值 4096
值的范围 0 - 2147483647
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 SQL Server 管理
Adaptive Server 为 transfer table 命令和标记为增量传输的表保留内存池。 此池提供了用于保留有关当前和过去的传输的状态信息的内存,以及用 于写入传输文件和从传输文件中进行读取的内存。transfer utility memory size 确定此内存池的大小。
此池的单元位于内存页(大小为 2048 字节的一些块)中。缺省大小已
足够大,可容纳超过 100 个标记为增量传输的表(所有表均同时传输)。
如果您的安装未包括标记为增量传输的表,并且未使用 transfer table 命 令,则可将此内存池的大小设置为零以回收此内存。
txn to pss ratio |
||
摘要信息 |
||
缺省值 |
16 |
|
有效值 |
1 - 2147483647 |
|
Status |
静态 |
|
显示级别 |
1 |
|
要求的角色 |
系统管理员 |
|
配置组 |
DTM 管理、内存使用 |
Adaptive Server 管理作为可配置服务器资源的事务。每次开始一个新事 务时,Adaptive Server 都必须从服务器启动时所创建的全局缓冲池中获 得一个可用的事务描述符。事务描述符是 Adaptive Server 用来表示活动 事务的内部内存结构。
Adaptive Server 需要将一个可用事务描述符用于:
• 各服务器事务的外部块。事务的外部块可能在客户端执行新的 begin transaction 命令时就已经明确创建了。当客户端使用 Transact-SQL 修改数据而没有使用 begin transaction 定义该事务时,Adaptive Server 也可能隐式创建了外部事务块。
注释 使用另外的 begin transaction 命令创建的后续嵌套事务块不要 求额外的事务描述符。
• 在多数据库事务中访问的每个数据库。每次事务使用或修改新数据 库中的数据时,Adaptive Server 都必须得到新的事务描述符。
txn to pss ratio 决定了服务器可以使用的事务描述符的总数。在启动时, 将该比率乘以 PSS 结构的数目以创建事务描述符缓冲池:
# of transaction descriptors = PSS structures * txn to pss ratio
缺省值 16 可确定与 12.x 之前的 Adaptive Server 早期版本兼容,这些版 本也为每个用户连接分配 16 个事务描述符。在版本 12 和更高版本中, 同时发生的事务数量仅受到服务器中可用事务描述符数量的限制。
注释 您在用户事务中具有的数据库的数目可以与 Adaptive Server 安装 后具有的数据库数目一样多。例如,如果 Adaptive Server 具有 25 个数 据库,则您可以在用户事务中包括 25 个数据库。
优化系统的 txn 与 pss 的比率
在高峰期间,使用 sp_monitorconfig 检查事务描述符的使用情况:
sp_monitorconfig "txn to pss ratio" Usage information at date and time: Apr 22 2002 2:49PM.
Name Num_free Num_active Pct_act Max_Used Reuse_cnt Instance_Name
------------------------ ---------- ---------- ------- -----------
---------- --------------------
txn to pss ratio 784 80 10.20 523
0 NULL
如果 num_used 值为零或过低,则事务可能会延迟,因为 Adaptive Server 需要等待服务器中的事务描述符变为可用。在这种情况下,应考虑增大 txn to pss ratio 的值。
如果 Max_Used 值太低,则未使用的事务描述符可能会消耗其它服务器 功能可使用的内存。请考虑减小 txn to pss ratio 的值。
unified login required
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 动态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
unified login required 要求通过某种安全机制对登录到 Adaptive Server 的所 有用户进行鉴定。若要使用统一登录安全服务,则必须将 use security services 参数设置为 1。
upgrade version |
||
摘要信息 |
||
缺省值 |
1100 |
|
值的范围 |
0–2147483647 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
SQL Server 管理 |
upgrade version 报告升级主设备的升级实用程序版本。更新实用程序在 更新期间检查并修改此参数。
警告!不要重置 upgrade version。否则可能会导致 Adaptive Server 出现 严重问题。
使用不指定参数的 upgrade version,可确定是否对主设备进行更新:
sp_configure "upgrade version"
use security services
摘要信息
缺省值 0(关闭)
值的范围 0(关闭),1(打开)
Status 静态
显示级别 Intermediate
要求的角色 系统安全员
配置组 与安全性相关的参数
use security services 指定 Adaptive Server 使用基于网络的安全服务。如果 该参数设置为 0,则无法使用任何基于网络的安全服务。
user log cache size
摘要信息
缺省值 逻辑页大小
值的范围 2048 a –2147483647
a 是由服务器逻辑页大小确定的最小值
Status 静态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、用户环境
user log cache size 指定每个用户的日志高速缓存的大小(以字节为单位)。 其大小由服务器的逻辑页大小决定。每个已配置用户连接和工作进程都 有一个用户日志高速缓存。Adaptive Server 使用这些高速缓存缓冲用户 事务日志记录,这可缓解在事务日志末端的争用。
当用户日志高速缓存变满或发生了另一事件时(如事务完成时), Adaptive Server 将所有日志记录从用户日志高速缓存“刷新”到数据库 事务日志。通过首先整合每个用户日志高速缓存中的日志记录,而不是 立即将每条记录添加到数据库事务日志中,Adaptive Server 可以减少写 入日志的进程的争用,特别是配置了多个引擎的 SMP 系统。
注释 对于使用了混合数据和日志段的数据库的事务,在每个日志记录 之后将用户日志高速缓存刷新到事务日志。不会发生缓冲。如果数据库 没有专用的日志段,则不要增加用户日志高速缓存的大小。
配置的 user log cache size 值不应大于由应用程序的事务写入的最大日志 信息量。由于 Adaptive Server 在事务完成时刷新用户日志高速缓存,因 此就浪费了分配给用户日志高速缓存的额外内存。如果服务器中事务生 成的事务日志记录没有一个多于 4000 字节,则设置的 user log cache size 值不要高于该值。例如:
sp_configure "user log cache size", 4000
将 user log cache size 设置得太高会浪费内存。将其设置得太低,则可能 导致用户日志高速缓存充满,且每个事务不止刷新一次。这将会增加事 务日志的争用。如果事务量较少,事务日志的争用量可能不会很明显。
使用 sp_sysmon 了解此参数如何影响高速缓存行为。请参见《性能和调 优系列:使用 sp_sysmon 监控 Adaptive Server》。
user log cache spinlock ratio
摘要信息
缺省值 20
值的范围 1–2147483647
Status 动态
显示级别 Intermediate
要求的角色 系统管理员
配置组 内存使用、用户环境
对于运行了多个引擎的 Adaptive Server,user log cache spinlock ratio 指定 用户日志高速缓存与用户日志高速缓存螺旋锁的比率。每个已配置用户 连接都有一个用户日志高速缓存。
缺省值针对为服务器配置的每 20 个用户连接指定 1 个螺旋锁。
使用 sp_sysmon 了解此参数如何影响高速缓存行为。请参见《性能和调 优系列:使用 sp_sysmon 监控 Adaptive Server》。
wait event timing |
||
摘要信息 |
||
缺省值 |
0 |
|
值的范围 |
0–1 |
|
Status |
动态 |
|
显示级别 |
Comprehensive |
|
要求的角色 |
系统管理员 |
|
配置组 |
内存使用、监控 |
wait event timing 控制 Adaptive Server 是否收集各个等待事件的统计信息。 任务可能会因各种原因而必须等待(例如,等待缓冲区读取完成)。 monSysWaits 表包含每个等待事件的统计信息。monWaitEventInfo 表包含 等待事件的完整列表。
workload manager cache size
缺省值 80
有效值 80 - 2147483647
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 共享磁盘集群
workload manager cache size 以 2K 页为单位指定工作负荷管理器可以使用 的最大内存量。请参见《集群用户指南》中的第 6 章“管理负载”。
摘要信息
缺省值 60(秒)
有效值 1 - 2147483647(秒)
Status 动态
显示级别 10
要求的角色 系统管理员
配置组 DTM 管理
xact coordination interval 定义了解析远程事务分支(已传播到远程服务器) 的两次尝试之间的时间间隔。
协调 Adaptive Server 定期尝试解析那些参与分布式事务的远程服务器的 工作。协调服务器将依次联系每个参与分布式事务的远程服务器,如
图 5-6 中所示。协调服务可能会由于各种原因而不能解析事务分支。例 如,如果由于网络问题无法联系到远程服务器,协调服务器在 xact coordination level 指定的时间过后将重新尝试连接。
图 5-6:解决远程事务分支
Adaptive Server
协调服务
“确定” “确定” “网络问题”
Adaptive Server 2 Adaptive Server 3 Adaptive Server 4
xact coordination interval 的缺省值为 60 秒,Adaptive Server 每分钟尝试解 析一次远程事务。减少该值可能会加速分布式事务的完成,但只限于可 在一分钟之内完成解析的事务。正常情况下,减小 xact coordination interval 的值不会对性能产生任何影响。
将 xact coordination interval 的值设得太高会减慢分布式事务完成的速度, 并且会导致事务分支占用资源的时间过长。正常情况下,不要使 xact coordination interval 的值超过其缺省值。
xp_cmdshell context
摘要信息
缺省值 1
有效值 0, 1, 2
Status 动态
显示级别 Comprehensive
要求的角色 系统管理员
配置组 扩展存储过程
xp_cmdshell context 设置使用 xp_cmdshell 系统 ESP 执行的操作系统命令 的安全性环境。该环境的值确定命令采用哪个帐户运行:
• 0 — 命令采用 XP Server 的帐户运行。
• 1 — 命令采用用户的帐户运行。
• 2 — 只有当用户拥有系统管理员权限时,命令才采用 XP Server 的帐 户运行。
如果将 xp_cmdshell context 设置为 1,则将 xp_cmdshell 安全性环境限制为 在操作系统级别拥有帐户的用户。它的行为因平台而异。如果 xp_cmdshell context 设置为 1,要使用 xp_cmdshell ESP,对于 Adaptive Server 用户名必须有一个操作系统用户帐户。例如,名为“sa”的 Adaptive Server 用户无法使用 xp_cmdshell,除非其拥有一个名为“sa” 的操作系统级别用户帐户。
以“root”身份启动 XP Server 会将 xp_cmdshell 设置为 1,从而自动启用 安全访问。
在 Windows 上,如果 xp_cmdshell context 设置为 1,则仅当登录 Adaptive Server 的用户的用户名是有效的 Windows 用户名(在运行 Adaptive Server 的系统上具有 Windows 系统管理权限)时, xp_cmdshell 才能成功。
在其它平台上,如果 xp_cmdshell context 设置为 1,则仅当启动 Adaptive Server 的用户在操作系统级具有“超级用户”权限时, xp_cmdshell 才能 成功。当 Adaptive Server 得到执行 xp_cmdshell 的请求时,它将核对该 ESP 请求者的用户名的 uid,并根据该 uid 的许可权限运行操作系统命令。
如果 xp_cmdshell context 设置为 0,则运行 Adaptive Server 的操作系统的 帐户权限可以用来从 xp_cmdshell 执行操作系统命令。这就使用户能够执行 操作系统命令,这些命令是用户在其操作系统帐户的安全性环境下通常 不能执行的命令。
Sybase SQL Anywhere数据库恢复工具ReadASADB:
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具: ReadASADB。此工具支持ASA v5.0, v6.0, v7.0, v8.0, v9.0, v10.0, v11.0, v12.0, v16.0, v17.0等版本。
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具。
恢复Sybase SQL Anywhere的工具在国内处于领先水平。
Sybase SQL Anywhere数据库恢复工具ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具
- 适用于所有的SQL Anywhere版本 包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x,16.x,17.x
- 适用于所有的UltraLite版本
- 能够恢复出来表结构和数据
- 能够恢复自定义数据类型
- 能够恢复存储过程等对象的语法
- 能够导出到目标数据库
- 能够导出到SQL文件并生成导入脚本
- 支持多种字符集,包括:cp850、cp936、gb18030、utf8等
- 能够恢复未加密或者简单加密类型的数据
- 简单易用
- 限制:不支持AES加密的数据文件
SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍
Sybase SQL Anywhere数据库恢复工具ReadASADB适用场景
各种误操作:
- 误截断表(truncate table)
- 误删除表(drop table)
- 错误的where条件误删数据
- 误删除db或log文件
- 误删除表中的字段
Sybase SQL Anywhere数据库恢复工具ReadASADB的应用场景:
1.因为物理磁盘故障、操作系统、系统软件方面或者掉电等等原因导致的Sybase SQL Anywhere数据库无法打开的情况;
2.误操作,包括truncate table,drop table,不正确的where条件导致的误删除等;
Sybase SQL Anywhere无法打开时,比较常见的错误是:Assertion failed。
如:
1、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Checkpoint log: invalid bitmap page -- transaction rolled back
2、Internal database error *** ERROR *** Assertion failed:201819 (8.0.1.2600) Page number on page does not match page requested -- transaction rolled back
3、Internal database error *** ERROR *** Assertion failed:200502 (9.0.2.2451) Checksum failure on page 23 -- transaction rolled back
4、File is shorter than expected
5、Internal database error *** ERROR *** Assertion failed: 201116 Invalid free list index page found while processing checkpoint log -- transaction rolled back
6、*** ERROR *** Assertion failed: 51901 Page for requested record not a table page or record not present on page
7、*** ERROR *** Assertion failed: 201417 (7.0.4.3541) Invalid count or free space offset detected on a table page
8、Internal database error *** ERROR *** Assertion failed: 201425 (8.0.3.5594) Invalid count or free space offset detected on a free list page -- transaction rolled back.
9、Internal database error *** ERROR *** Assertion failed: 100702 (8.0.1.2600) Unable to modify indexes for a row referenced in rollback log -- transaction rolled back
Sybase ASE数据库恢复工具READSYBDEVICE:
一个不依赖数据库管理系统、直接从Sybase数据库设备文件上提取数据的业内领先的恢复工具!能够从损坏的Sybase ASE设备文件(.dat)上提取数据的非常规恢复工具。
Sybase ASE数据库恢复工具READSYBDEVICE的主要功能:
- 被勒索病毒加密数据文件及备份文件情况下的恢复;
- 系统崩溃只剩下数据文件的情况下的恢复,甚至数据库文件不存在而只有损坏的备份文件情况下的恢复;
- 因断电、硬盘坏道等造成数据库文件损坏情况下的恢复;
- delete数据恢复、误update数据恢复、误删除表(drop)恢复、误truncate表恢复 等;
- 各种Sybase内部系统表损坏、索引错误的修复;
- master数据库损坏而无法正常运行情况下的恢复;
- Sybase数据库被标记为可疑,不可用等情况的恢复;
- Sybase数据库中数据文件内部出现坏块情况下的恢复;
- Sybase数据库无数据文件但有日志文件的情况下的恢复;
- Sybase数据库只有数据文件无任何日志文件的情况下的恢复;
- Sybase数据文件被误删除情况下的碎片提取恢复;
- 磁盘阵列上的Sybase数据库被误格式化情况下的数据库恢复;
- 数据库sysobjects等系统表损坏无法正常应用情况下的恢复;
- Sybase数据库还原数据库出现失败情况下的恢复;
- Sybase数据库只剩下损坏的备份文件情况下的恢复。
Sybase ASE数据库恢复工具READSYBDEVICE支持的版本:
Sybase ASE 11.0.x,11.5.x,11.9.x,12.0.x,12.5.x,15.0.x,15.5.x,15.7.x,16.0.xSQL Server数据库恢复工具SQLRescue:
一个不依赖数据库管理系统、直接从SQL Server数据库文件上提取数据的业内领先的恢复工具!能够从损坏的SQL Server数据库文件(.mdf)上提取数据的非常规恢复工具。
SQL Server数据库恢复工具SQLRescue的主要功能:
- 系统崩溃只剩下数据文件的情况下的恢复,即无日志文件或者日志文件损坏情况下的恢复;
- 断电导致数据库文件损坏情况下的恢复;
- 硬盘坏道造成数据库损坏情况下的恢复;
- 数据文件内部存在坏页情况下的恢复;
- 企业管理器误删除数据表记录,管理软件误删除数据表记录的恢复;
- 并闩锁错误、格式化、误删除后导致软件不能使用的情况;
- 无法读取并闩锁页sysindexes失败情况下的修复;
- 数据文件被误删除情况下的碎片提取恢复;
- 系统表损坏、索引错误、误删除数据库表、删除记录的数据找回;
- master数据库损坏而无法正常运行情况下的恢复;
- 数据文件无法附加情况下的数据恢复;
- 数据库被标记为可疑,质疑,不可用等情况的恢复;
- 数据库sysobjects等系统表损坏情况下的恢复;
- 数据被误(drop、delete、truncate)删除表数据的恢复,误update后的数据恢复等;
- 还原时报一致性错误,错误823等情况下的数据恢复,各种错误提示的数据库文件修复;
- 数据库被误格式化等情况下的数据库恢复;
- 日志收缩造成数据库损坏情况下的恢复;
- 仅剩损坏的备份文件情况下的恢复。
SQL Server数据库恢复工具SQLRescue技术特点:
只要SQL Server数据库的数据文件存在,我们就有办法帮您从数据文件中找回重要数据。- 从数据文件中直接恢复数据
- 不能附加时直接恢复数据并生成新的数据库
- 系统表损坏的数据库修复
- 快速修复SQL 823错误、连接中断错误
SQL Server数据库恢复工具SQLRescue支持的版本:
Microsoft SQL Server 7.0, 2000, 2005, 2008, 2008R2, 2012, 2014, 2016, 2017,2019。+-------------------------------------华丽的分割线-------------------------------------------------------------------------