远程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. 实用程序指南

 


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

使用 optdiag 更改统计信息

系统管理员可使用 optdiag 更改列级统计信息。


image

警告! 使用 optdiag 更改统计信息可以改进某些查询的性能。但是,

optdiag 会覆盖系统表中的现有信息,从而影响对给定表的所有查询。

要非常谨慎使用并彻底测试在使用该表的所有查询上的所做的所有更改。 如果可能,在将统计信息装载到生产服务器前,请在开发服务器上使用 optdiag simulate 测试这些更改。

如果未在模拟模式下装载统计信息,请根据需要准备恢复统计信息,方 法是使用 optdiag 输出的未改动副本或重新运行 update statistics

不要尝试通过运行 updatedelete insert 命令来更改任何统计信息。

可使用 32 Adaptive Server 中的 optdiag 输出更改另一 32 Adaptive Server 中的统计信息,但不能更改 64 Adaptive Server 中的统计信息。 同样,不要将 64 Adaptive Server optdiag 输出用作 32 Adaptive Server 的输入。

image


使用 optdiag 更改统计信息后,运行 create index update statistics 将覆盖 所作的更改。命令成功执行,但显示一则警告消息:

WARNING:Edited statistics are overwritten.:’titles’ (objectid 208003772), column:’type’.


使用 optdiag binary


image

注释 输出以十六进制(而非二进制)形式显示。

image


因为使用浮点数时会失去精度,因此 optdiag 提供了一个 binary 选项。以 下命令将显示可读统计信息和二进制统计信息:

optdiag binary statistics pubtune..titles.price

-Usa -Ppasswd -o price.opt

binary 中,可使用 optdiag 编辑的任何统计信息都会输出两次,一次使 用二进制值,一次使用浮点值。显示浮点值的行以 optdiag 注释字符(即 井号 (#) 开头)。

下面的示例显示表示 authors 表中 city 列的直方图的前几行:

Step Weight Value


1

0x3d2810ce

<=

0x41504f204d69616d68ffffffffffffffffffffff

#

1

0.04103165

<=

"APO Miami\377\377\377\377\377\377\377\377"

2

0x3d5748ba

<=

0x41746c616e7461

#

2

0.05255959

<=

"Atlanta"

3

0x3d5748ba

<=

0x426f79657273

#

3

0.05255959

<=

"Boyers"

4

0x3d58e27d

<=

0x4368617474616e6f6f6761

#

4

0.05295037

<=

"Chattanooga"

optdiag 装载此文件时,会读取所有未注释的行,而忽略井号 (#) 后面 的所有字符。若要编辑浮点值(而不是二进制值),请从显示浮点值的 行中删除井号 (#),然后在显示二进制值的相应行的开头插入井号 (#)


何时使用 binary


optdiag 输出中的两个直方图梯级可能由于缺乏精度而显示相同的值,即 使二进制值并不同。例如,在十进制中 1.999999999 2.000000000 可 能都显示为 2.000000000,即使其二进制值是不同的。在此类情况下, 应使用 binary 来进行输入。

如果不使用二进制模式,则 optdiag 会发出错误消息,指示不会增加梯级 值,并建议您使用二进制模式。为避免在执行 sysstatistics 时失去精度, optdiag 会跳过装载出错的直方图。


使用 optdiag 输入模式更新选择性

如果在查询优化期间搜索参数的值未知,则优化程序会使用范围选择性 值和两者之间选择性值。可使用 optdiag 自定义服务器范围内的缺省选 择性值,以匹配应用程序中特定列的数据。

服务器范围的缺省值为:

范围选择性 — 0.33

两者之间选择性 — 0.25

下面的示例显示 optdiag 如何显示缺省值:

Statistics for column: "city"

Last update of column statistics: Feb 4 2008 8:42PM


Range

cell density:

0x3f634d23b702f715

#

Range

cell density:

0.0023561189228464

Total

density:

0x3f46fae98583763d

#

Total

density:

0.0007012977830773

Range

selectivity:

default used (0.33)

#

Range

selectivity:

default used (0.33)

In between selectivity:

default used (0.25)

#

In between selectivity:

default used (0.25)

若要编辑选择性值,请将整个“ default used (0.33)”或“default used (0.25)” 字符串替换为浮点值。以下示例使用十进制值将域选择性改为 .25,将 两者之间选择性改为 .05

Range selectivity: 0.250000000 In between selectivity: 0.050000000


编辑直方图


您可以编辑直方图,以便:

删除一个梯级,方法是先将其权值传送给相邻行,然后再删除该 梯级。

增加一个或多个梯级,方法是先将某个单元的权值扩展到其它行, 并且扩展任何新梯级所代表的列值的上限。


向直方图增加频率计数单元

编辑直方图的原因之一是,增加频率计数单元,而不大量增加梯级数。


使用密集频率计数编辑直方图

对直方图所做的更改会有所不同,具体取决于这些值是表示密集频率计 数还是稀疏频率计数。若要为给定列值添加频率单元,请检查列值是否 正好小于新单元的值。如果下一个更小的值与要添加的值很接近,则可 确定是频率计数。

如果更改的下一个更小的列值与频率计数值很接近,则可轻松提取频率 计数单元。

例如,如果某个列中至少包括一个 19 和多个 20,且直方图使用一个单 元来表示所有大于 17 且小于等于 22 的值,则 optdiag 输出显示该单元的 以下信息:

Step

Weight

Value

...

4

0.100000000

<=

17

5

0.400000000

<=

22

...

要变更此直方图以将值 20 放置在该值自己的梯级上,这需要增加两个 梯级,如下所示:

...

4

0.100000000

<=

17

5

0.050000000

<=

19

6

0.300000000

<=

20

7

0.050000000

<=

22

...

在上面已变更的直方图上,梯级 5 代表所有大于 17 且小于等于 19 的值。 在修改后的直方图中,梯级 56 7 的权值总和等于梯级 5 的原始权值。


使用稀疏频率计数编辑直方图

如果列中没有大于 17 且小于 20 的值,请使用稀疏频率计数表示形式。 以下是初始的直方图梯级:

Step

Weight

Value

...

4

0.100000000

<=

17

5

0.400000000

<=

22

...

以下示例显示权值为零的梯级 5,它是稀疏频率计数所要求的:

...

4

0.100000000

<=

17

5

0.000000000

<

20

6

0.350000000

=

20


7 0.050000000 <= 22

...

梯级 5 的运算符必须为 <。梯级 6 必须为值 20 指定权值,而且其运算符 必须是 =


跳过对梯级编号的装载时间检验

缺省情况下,optdiag 输入模式会检查直方图中的梯级数是否是以 1 为增 量进行编号。编辑直方图梯级数后,若要跳过此检查,请使用命令行标 志 -T4

optdiag statistics pubtune..titles -Usa -Ppassword -T4 -i titles.opt


直方图装载期间检查的规则

在直方图输入期间,会检查以下规则。冲突的规则会生成错误消息。

每个梯级编号都应大于上一梯级编号(除非打开 -T4)。对于每个 梯级的列值,该值应大于或等于上一梯级的列值。

梯级的列值必须单调递增。

每个单元的权值必须介于 0.0 1.0 之间。

列的总权值必须接近 1.0

第一个单元代表空值,而且它必须存在,即使是对于不允许空值的 列也是如此。只能有一个单元代表空值。

相邻的两个单元不能同时使用 <运算符。


重新创建索引而不丢失统计信息更新

若要在更新直方图后删除和重新创建索引,并且您希望保留编辑的值, 请在 create index 命令中将梯级数指定为 0。此命令会重新创建索引而不 更改直方图:

create index title_id_ix on titles(title_id) with statistics using 0 values




--------------------------------------华丽的分割线-------------------------------------------------------------------------
之前就已经研发成功了能够从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等等。
+-------------------------------------华丽的分割线-------------------------------------------------------------------------