远程Sybase数据库技术支持,联系手机:13811580958,QQ:289965371!

 

随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
目前,原Sybase所有产品(包括:Adaptive Server Enterprise、Sybase IQ、Replication Server、PowerDesigner等)的官方手册仍然可以从http://infocenter.sybase.com/help/index.jsp进行浏览或下载。暂不清楚该网站http://infocenter.sybase.com/help/index.jsp何时会被完全迁移到SAP Support上!
Sybase官方手册英文版有html和pdf两种格式,而中文版手册只有pdf一种格式。为了国内Sybase用户更方便、快捷地搜索Sybase常见产品的官方手册内容,特将中文版Sybase官方手册转为html格式!
Sybase产品官方手册中文版的html格式所有内容的版权归SAP公司所有!本博客站长是Sybase数据库的铁杆粉丝!

如有Sybase数据库技术问题需要咨询,请联系我!

  QQ :289965371 点击这里给我发消息
  Email:

以下官方手册为ASE 15.7 ESD#2中文版:

  1. 新增功能公告 适用于 Windows、Linux 和 UNIX 的 Open Server 15.7 和 SDK 15.7
  2. 新增功能摘要
  3. 新增功能指南
  4. ASE 15.7 发行公告
  5. 配置指南(windows)
  6. 安装指南(windows)
  7. 参考手册:构件块
  8. 参考手册:命令
  9. 参考手册:过程
  10. 参考手册:表
  11. Transact-SQL® 用户指南
  12. 系统管理指南,卷 1
  13. 系统管理指南,卷 2
  14. 性能和调优系列:基础知识
  15. 性能和调优系列:锁定和并发控制
  16. 性能和调优系列:监控表
  17. 性能和调优系列:物理数据库调优
  18. 性能和调优系列:查询处理和抽象计划
  19. 性能和调优系列:使用 sp_sysmon 监控 Adaptive Server
  20. 性能和调优系列:利用统计分析改进性能
  21. 程序员参考 jConnect for JDBC 7.0.7
  22. Adaptive Server Enterprise 中的 Java
  23. 组件集成服务用户指南
  24. Ribo 用户指南
  25. 内存数据库用户指南
  26. Sybase Control Center for Adaptive Server® Enterprise
  27. 安全性管理指南
  28. 实用程序指南

 


< 上一个 | 内容 | 下一步 >

任务管理


提供有关已打开的连接、按引擎列出的任务环境切换以及按原因列出的 任务环境切换的信息。 Task Management 标识任务停止运行的原因 (即, 报告突出显示资源短缺和争用)。


样本输出

Task Management per sec


per xact


count


% of total

-------------------------- ------------

----------

--------

----------

Connections Opened 0.2

0.0

154

n/a

Task Context Switches by Engine

Engine

0

269.9

3.4

240477

7.3

%

Engine

1

209.4

2.7

186574

5.7

%

Engine

2

198.4

2.5

176730

5.4

%

Engine

3

198.5

2.5

176859

5.4

%

Engine

4

278.4

3.5

248054

7.5

%

Engine

5

187.1

2.4

166697

5.1

%

Engine

6

202.7

2.6

180640

5.5

%

Engine

7

312.2

4.0

278129

8.5

%

Engine

8

215.7

2.7

192198

5.8

%

Engine

9

260.3

3.3

231940

7.1

%

Engine

10

235.1

3.0

209447

6.4

%

Engine

11

409.2

5.2

364604

11.1

%

Engine

12

225.8

2.9

201166

6.1

%

Engine

13

484.9

6.1

432020

13.1

%

-------------------------

Total Task Switches:

------------

3687.5

------------

46.7

---------- 3285535


Task Context Switches Due

To:

Voluntary Yields

860.8

10.9

766929

23.3

%

Cache Search Misses

852.0

10.8

759122

23.1

%

System Disk Writes

12.7

0.2

11353

0.3

%

Exceeding I/O batch size

184.7

2.3

164550

5.0

%

Logical Lock Contention

0.3

0.0

258

0.0

%

Address Lock Contention

0.0

0.0

12

0.0

%

Latch Contention

0.7

0.0

587

0.0

%

Log Semaphore Contention

31.1

0.4

27737

0.8

%

PLC Lock Contention

0.6

0.0

577

0.0

%

Group Commit Sleeps

6.9

0.1

6122

0.2

%

Last Log Page Writes

71.4

0.9

63619

1.9

%

Modify Conflicts

19.9

0.3

17728

0.5

%

I/O Device Contention

0.0

0.0

0

0.0

%

Network Packet Received

152.1

1.9

135483

4.1

%

Network Packet Sent

643.7

8.1

573528

17.5

%

Network services

127.8

2.3

7564

8.9

%

Other Causes 850.7 10.8 757930 23.1%


Connections Opened

Adaptive Server 的已打开连接数。它包括任何类型的连接,如客户端连 接和远程过程调用。它只将在采样间隔期间开始的连接计算在内;采样 间隔开始前所建立的连接不包括在内,虽然它们可能处于活动状态并使 用资源。

Connections Opened”提供对 Adaptive Server 环境和间隔期间的负载的一 般性了解。该数据对于了解应用程序的行为也十分有用,它可以帮助确 定应用程序是否重复打开和关闭连接或者是否对每个连接执行多个事务。

有关提交的事务的信息,请参见 59 页的 “事务配置文件


Task Context Switches by Engine

Adaptive Server 上运行的每个进程都有它自己的 “上下文”(即环境), 其中包含有关当前数据库、客户端字符集、当前运行的查询等内容的信 息。当 Adaptive Server 正在运行一个客户端或系统进程,但必须切换到 另一个客户端或系统进程时,即发生 “环境切换”,这种切换涉及到更 改引擎在其中运行的环境。

Task Context Switches by Engine”报告每个 Adaptive Server 引擎将环境 从一个用户任务切换到另一个用户任务的次数。“% of total”报告每个 Adaptive Server 引擎的引擎任务切换占所有 Adaptive Server 引擎加起来 的任务切换总数的百分比。

Total Task Switches”汇总了 SMP 服务器上所有引擎的任务切换活动。 您可以使用 “Total Task Switches”来观察重新配置后的结果。如果任务 似乎在高速缓存搜索未命中时发生阻塞并经常被切断,则可能需要重新 配置高速缓存或增加内存。然后检查数据,以查看任务往往会更多还是 更少地被切断。


Task Context Switches Due To

Adaptive Server 因许多常见原因切换环境的次数。“% of total”报告由于 特定原因而发生的环境切换的次数占所有 Adaptive Server 引擎加起来进 行的任务环境切换总数的百分比。

Task Context Switches Due To”概述了出现任务关闭引擎这类情况的原 因。可以通过检查其它 sp_sysmon 输出来研究本部分中所示的可能的性能 问题,如描述这些原因的部分中所述。


例如,如果多数任务切换是由物理 I/O 引起的,请尝试通过添加更多内存 或重新配置高速缓存来最大限度减少物理 I/O。然而,如果任务切换多数 由于锁争用所导致,则应检查报告的锁定部分。

有关详细信息,请参见 88 页的 “ Lock Management


Voluntary Yields


任务完成但未放弃的次数。 Network Packet Sent 列中表示完成后放弃 的任务。自动放弃数值高表明极少存在争用。

配置参数 time slice 设置进程可运行的时间长度。不会因其它原因而断开 的占用大量 CPU 的任务将会在代码的特定 “屈服点”放弃 CPU,从而 使得其它进程可以使用 CPU 。请参见 53 页的 “ Allotted Slices Exhausted 确定任务是否正在用尽其时间配额。

有关详细信息,请参见 《性能和调优系列:基础知识》中的 “使用引擎 和 CPU”。


Cache Search Misses

因为所需的页不在高速缓存中且不得不从磁盘读取而断开任务的次数。 对于数据和索引页,执行物理读取时将断开任务。

有关 sp_sysmon 输出中与高速缓存相关的部分的详细信息,请参见 98 页 的 “数据高速缓存管理


Exceeding I/O Batch Size

因为 Adaptive Server 超出 I/O 批处理限制而导致 I/O 密集型任务从引擎断 开的次数。但是,“Exceeding I/O batch size”只报告从非日志 I/O 批处理 进行的环境切换。 Adaptive Server 将调整磁盘写入速度,以防止在需要 执行大量 I/O 的某些操作过程中将磁盘 I/O 子系统淹没。例如,检查点任 务会将大量数据页写入磁盘。 Adaptive Server 会断开检查点任务,因此 在批写完成之前,它一直处于休眠状态。然后检查点会唤醒并进行另一 批处理。

使用 i/o batch size 参数配置非日志 I/O 和日志 I/O 的批处理大小。

缺省情况下,每个批处理的写入数设置为 100。下列情况下可能需要增加 每个批处理的写入数:

您使用一个具有大量数据高速缓存的高吞吐量、事务密集型环境。

I/O 绑定的系统。


System Disk Writes


任务由于以下原因而断开的次数:

超出日志 I/O 批处理大小 (10 页)

需要执行磁盘写入

需要访问正由其它进程 (如管家或检查点进程)写入的页

多数 Adaptive Server 写入均为异步操作,但在页面拆分写入、恢复和 OAM

页面写入过程中,进程会进入休眠状态。

如果 “System Disk Writes”看上去较高,请检查页面拆分的值以查看问 题是否起因于数据页和索引页拆分。

请参见 79 页的 “ Page Splits

如果系统磁盘写入值较高不是页面拆分引起的,则不能通过调优 Adaptive Server 来影响该值。


Logical Lock Contention

因为表、数据页或数据行上的锁争用而断开任务的次数。 通过检查事务明细和报告的锁管理部分研究锁争用问题。

请参见 62 页的 “ Transaction Detail 88 页的 “ Lock Management

检查查询是否在执行延迟更新和昂贵的直接更新,它们可能导致其它 索引锁。请参见 64 页的 “ Updates

使用 sp_object_stats 以每个对象为基础报告信息。

有关详细信息,请参见 Performance and Tuning Series: Locking (《性 能和调优系列:锁定》)中的第 3 章 “Locking Reports”(锁定报告)。

有关锁和锁争用的其它帮助,请参见:

• Performance and Tuning Series: Locking and Concurrency Control(《性 能和调优系列:锁定和并发控制》)中的 “Types of Locks”(锁类 型),其中提供有关可在服务器或查询级别使用的锁类型的信息。

• Performance and Tuning Series: Locking (《性能和调优系列:锁定》) 中的第 2 章 “Locking Configuration and Tuning”(锁定配置和调优), 其中提供有关减少锁争用的信息。


• Performance and Tuning Series: Locking (《性能和调优系列:锁定》) 中的第 1 章 “Introduction to Locking”(锁定简介),其中提供有关 索引和查询调优的信息。特别是,使用索引以确保更新和删除时未 导致表扫描和排它表锁。


Address Lock Contention

因为地址锁而断开任务的次数。 Adaptive Server 在所有页锁定表的索引 页上获取地址锁。这些锁会阻止访问数据页。例如,索引页上的排它地 址锁会阻止另一系统进程 ID (spid) 读取该页并按该索引找到数据。但是, 任务仍然可以使用其它访问方法访问数据。此外,当叶级索引页被以排 它方式锁定时,将无法对锁定页上索引行所指向的任何数据进行任何修 改,因为索引行可能也需要修改。


Latch Contention


因为需要等待闩锁而断开任务的次数。

如果用户表仅使用所有页锁定,则会在 DOL 锁定系统表或分配页上出现 闩锁争用。

如果应用程序使用仅数据锁定,则此处报告的争用包括所有闩锁等待,包 括索引页上和 OAM 页以及分配页上的闩锁等待。


在页分配过程中减少争用


SMP 环境中,插入和扩展更新非常多,以至于页分配频繁出现,分配 页的锁存争用可能会降低性能。通常, Adaptive Server 在分配单元上为 对象分配新页,此分配单元已由此对象使用并已知具有可用空间。

对于每个对象, Adaptive Server 会跟踪该分配页号,页号将作为提示,用 于需要为该对象分配页的任何任务。当同一分配单元上有多个需要同时分 配页的任务时,第二个和随后的任务将在分配页的闩锁上阻塞。

您可以指定 “贪心分配”方案,以便 Adaptive Server 保留对表进行页分 配的八个分配提示的列表。

下面的命令为数据库 6 中的 salesdetail 表启用贪心分配:

dbcc tune(des_greedyalloc, 6, salesdetail, "on")

若要将其关闭,请使用:

dbcc tune(des_greedyalloc, 6, salesdetail, "off")

dbcc tune(des_greedyalloc) 的作用不是持久性的,所以重新启动 Adaptive Server 后必须重新发出相关命令。


只在具备以下所有条件时使用 dbcc tune(des_greedyalloc)

有多个引擎。少于四个引擎时该命令几乎没有作用。

为此对象分配了大量的页。您可以使用 sp_spaceused optdiag 跟踪 页数。

闩锁争用计数器显示争用情况。

将表指定给它们自己的段时贪心分配的作用更大。如果在同一段上对几 个表启用贪心分配,则同一分配提示可用于一个以上的表。

不允许在 master tempdb 数据库中使用贪心分配,也不允许在系统表中 使用。贪心页分配不适用于已分区的表。

提示是可能具有可用空间的分配页。保留的最大提示数为 16


物理、逻辑和对象锁转换

物理锁转换 — 标识与获取物理锁相关的环境切换。

逻辑锁转换 — 标识与获取集群逻辑锁相关的环境切换

对象锁转换 — 标识与获取对象锁相关的环境切换

对于这三行,% total 表示由集群消息传送导致的环境切换的总数。此环 境较高的 % total 值表示存在大量集群消息活动。将该数值与 Number of Cluster Lock Requests 进行比较可确定每个锁请求的集群消息数。有 关环境切换的详细信息,请查询 monSysWaits 监控表。

如果锁请求导致太多环境切换,请评估您的应用程序分区。较高的环境 切换数表示需要更多集群消息缓冲区。如果 CIPC 消息缓冲区不足, monCIPC 可能具有较高的 ReceiveCount TransmitCount 值。增加 CIPC 消 息缓冲区大小可解决此问题。


Log Semaphore Contention

信号是一种简单的内部锁定机制,可防止另一个任务访问当前正在使用 的数据结构。 Adaptive Server 使用信号来保护用户日志高速缓存,因为 有多个进程可以访问 ULC 的记录并强制刷新。

Log Semaphore Contention”报告因为需要获取其它任务持有的事务日志 信号而断开任务的次数。它仅适用于 SMP 系统。

如果日志信号争用很严重,请参见 66 页的 “事务管理。 检查事务日志所使用磁盘上的磁盘队列。请参见 120 页的 “磁盘 I/O

管理


另请参见 23 页的 “ Engine Utilization (Tick %)。如果引擎利用率报告的 值较低,且响应时间在可接受的限制范围内,则可考虑减少引擎数。通过 减少试图同时访问日志的任务数,这样可运行较少的引擎以减少争用。

严重的日志信号争用通常表示日志记录或 I/O 子系统存在问题。但是,在 具有高吞吐量的 OLTP 环境中,即使经过良好调优的系统也可能具有严 重的日志信号争用。


PLC Lock Contention

报告用户日志高速缓存中的锁争用。


Group Commit Sleeps

某个任务执行事务提交并在另一任务将日志写入磁盘之前进入休眠状态 的次数。

提交某事务时,其日志记录从它的用户日志高速缓存刷新到高速缓存中 事务日志的当前页中。如果该日志页 (或者多个日志页,如果配置了大 的日志 I/O 大小)不完整,则会将任务断开并将其置于运行队列的末尾。 在以下情况下执行日志页写入:

另一进程填充日志页,并刷新日志。这显示为 Group Commit Sleep

I/O Pacing

任务到达运行队列的顶部,且其它进程未刷新日志页。这显示为 Last Log Page Write

在吞吐量较大的环境中,大的日志 I/O 大小有助于防止日志设备上磁盘队 列中出现问题。组提交休眠的百分比例较高时不应看作是问题。


Last Log Page Writes

在写入最后一个日志页时任务由于进入休眠状态而断开的次数。

任务之所以会断开,是因为它负责写入最后一个日志页,而不是在等待 其它某个任务写入日志页时进入休眠状态 (如 47 页的 “ Group Commit Sleeps中所述)。

如果该值较高,请检查 75 页的 “ Avg # Writes per Log Page 以确定 Adaptive Server 是否将相同的最后一页重复写入日志中。如果日志 I/O 大 小大于 2K,,则减小日志 I/O 大小可减少不必要的日志写入次数。


请参见“Optimizing Transaction Performance in Adaptive Server Enterprise 12.5”(在 Adaptive Server Enterprise 12.5 中优化事务性能)白皮书位于 http://www.sybase.com (在 Sybase 主页上的搜索字段中输入 “Optimizing Transaction Performance”)。


Modify Conflicts


在特殊的轻量保护机制下,某任务试图独占访问由另一任务持有的页的 次数。对于某些操作, Adaptive Server 采用轻量保护机制,从而可独占 访问某页而不使用实际页锁 (例如,访问某些系统表和脏读)。这些进 程需要独占访问此页,即使它们不对此页进行修改。


I/O Device Contention

任务在等待特定设备的信号时进入休眠状态的次数。

当某个任务需要执行物理 I/O 时,Adaptive Server 填充 I/O 结构并将其链 接到每个引擎的 I/O 队列。如果两个Adaptive Server引擎同时请求同一设 备上的 I/O 结构,则其中一个引擎在等待信号时进入休眠状态。

仅当您启用了磁盘镜像 (缺省值为 “disabled”)或者 I/O 被延迟时,才 会出现设备争用。有关延迟 I/O 的详细信息,请参见 120 页的 “磁盘 I/O 管理

如果严重争用 I/O 设备信号,请尝试通过重新分布设备间的表或通过增加 设备并将表和索引移动到设备上来减少争用。


Network Packet Received

Network Packet Received”报告任务切换时,任务切换起因于以下原因 之一:

某任务接收到多包批处理的一部分,并断开以等待客户端发送批处理 的下一个包,或者

任务彻底处理完当前批处理,并在等待从客户端接收下一个命令或包 时被置于接收休眠状态。这是由于 “Network Packet Received”而导 致的任务环境切换的最常见原因。

如果 “Network Packet Received ”很高,请参见 126 页的 “网络 I/O 管 理 。您可以为所有连接配置网络包大小,或允许某些连接使用较大的包 大小登录。

有关网络包大小的详细信息,请参见 《性能和调优系统:基础知识》中 的第 1 章 “基础知识简介”。


有关配置参数的详细信息,请参见 《系统管理指南,卷 1》中的第 5 章 “设置配置参数”。


Network Packet Sent

任务在等待网络将每个包发送到客户端时进入发送休眠状态的次数。网 络模型确定在任意一个时间点,每个连接只能有一个未完成的包。任务 可以在不向网络 IO 任务发布发送请求的情况下发送网络包,从而避免任 务环境切换。

如果要发送很多数据,并且该任务要发送许多小包 (每个包 512 字节), 则此任务可能会多次结束休眠。数据包大小是可配置的,而且不同的客 户端可请求不同的数据包大小。查询完成后,该操作将包含在 Network Packet Send 列中。

有关网络包的详细信息,请参见 《性能和调优系统:基础知识》中的第

2 章 “网络和性能”

如果 “Network Packet Sent ”是导致任务切换的主要原因,请参见 126 页 的 “网络 I/O 管理


Network Services


测量由于在网络操作 (不是 send receive 操作)上休眠而导致的环境 切换次数。


Other Causes


任务由于上述原因以外的任何原因而断开的次数。由 “Network Services” 引起的等待数会减少该值。在经过良好调优的服务器中,该值会随任务 切换的可调优资源的减少而增大。




--------------------------------------华丽的分割线-------------------------------------------------------------------------
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具:ReadASADB。
此工具支持ASA v5.0,v6.0,v7.0,v8.0,v9.0,v10.0,v11.0,v12.0等版本。
恢复Sybase SQL Anywhere的工具在国内应该算首创。

ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具

  1. 适用于所有的SQL Anywhere版本    包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x
  2. 适用于所有的UltraLite版本
  3. 能够恢复出来表结构和数据
  4. 能够恢复自定义数据类型
  5. 能够恢复存储过程等对象的语法
  6. 能够导出到目标数据库
  7. 能够导出到SQL文件并生成导入脚本
  8. 支持多种字符集  包括:cp850、cp936、gb18030、utf8等
  9. 能够恢复未加密或者简单加密类型的数据
  10. 简单易用
  11. 限制:不支持AES加密的数据文件
请参考:研发成功了从Sybase SQL Anywhere的DB文件上恢复数据的工具
            SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍

ReadASADB适用场景

各种误操作:

  1. 误截断表(truncate table)
  2. 误删除表(drop table)
  3. 错误的where条件误删数据
  4. 误删除db或log文件
  5. 误删除表中的字段

本工具的应用场景:

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等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------