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

 


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

update index statistics

说明 更新索引中所有列的统计信息。

语法 update index statistics

table_name [[partition data_partition_name] |

[ [index_name [partition index_partition_name]]] [using step values]

[with consumers = consumers] [, sampling=N [percent]] [, no_hashing | partial_hashing | hashing]

[, max_resource_granularity = N percent]] [, histogram_tuning_factor = int ]

[, print_progress = int]

参数 table_name

update statistics 一起使用时, table_name 是与索引相关联的表的名 称。因为 Transact-SQL 不要求索引名在数据库中唯一,所以 table_name 是必需的。

data_partition_name 是要更新的分区的名称。更新数据分区上的每个本地索引分区的统计 信息。不更新全局索引的统计信息。

index_name 是要更新的索引的名称。如果未指定索引名,则更新指定表中所有索 引的分布统计信息。

index_partition_name

是要更新的索引分区的名称。

using step values 指定直方图梯级数。对于不存在统计信息的列,缺省值是 20。如果 需要更改此参数的缺省值,请使用 sp_configure 修改 number of histogram steps 参数。如果 sysstatistics 中已经有某个列的统计信息, 则该列的缺省值是当前梯级数。

这些梯级适用于分区表的每个分区;例如, update index statistics 对更 新统计信息的扫描中涉及的每个数据和索引分区都使用缺省梯级值 20。如果通过全局索引的索引扫描生成全局统计信息,则缺省情况下 应用 20 个梯级。如果通过数据扫描或本地索引扫描生成分区统计信

息,则缺省情况下对每个分区应用 20 个梯级。

如果通过 using step values 指定的直方图梯级数为 M,且 histogram_tuning_factor 参数为 N,则 update index statistics 使用 0 M*N 之间的梯级数,具体取决于 update index statistics 隔离的频率单 元数以及是否存在任何范围单元。


with consumers = consumers

指定在提供了 column_list 并启用了并行查询处理的情况下用于排序的 消耗程序进程数。 consumers 选项指定应用于排序的并行度,排序是 为单个数据分区上的统计信息更新所执行的。例如,如果带有列列表 的 update statistics 应用于包含三个数据分区的表,则会单独对每个分 区中的数据进行排序,并在每次排序期间应用 consumers 选项。三次 排序本身不并行执行。


image

注释 max parallel degree 配置参数的值必须大于 with consumers 的值。例 如,如果 with consumers 设置为 2,则 max parallel degree 不得小于 3

image


with sampling = N percent 指定为收集统计信息而对列进行随机采样的百分比。 N 值是 1 100 之间的任意数字。


image

注释 散列当前不支持采样。

image


[no_hashing | partial_hashing | hashing]

指示 update index statistics 收集的基于散列的统计信息的级别。以下各 项之一:

no_hashing – (缺省值) update index statistics 使用 15.7 之前版本

Adaptive Server 的算法收集基于排序的统计信息。

partial_hashing update index statistics 使用针对包含的唯一值少于 65536 的列的算法。如果 updates index statistics 遇到的唯一列计数 大于或等于 65536 阈值,则会额外使用排序扫描。

hashing updates index statistics 使用低域和高域散列创建直方图。

max_resource_granularity = N percent

限制与 update index statistics 和散列结合使用的 tempdb 缓冲区高速缓 存量。

with histogram_tuning_factor = integer

确定 update index statistics 的分配粒度。

print_progress = int

确定 update index statistics 是否显示进度消息。

• 0 – (缺省值)命令不显示任何进度消息

• 1 - 命令显示进度消息

示例 示例 1 生成 authors 表的所有索引中的所有列的统计信息:


update index statistics authors

示例 2 生成 authors 表的 au_names_ix 索引中的所有列的统计信息:

update index statistics authors au_names_ix

示例 3 使用采样率 20% 生成 au_names_ix 索引的所有内部列的统计信息。

update index statistics authors au_names_ix with sampling = 20 percent

使用索引页的完全扫描收集 au_names_ix 的前导列的统计信息;不对该 列进行采样。

示例 4 生成索引分区的所有列的统计信息:

update index statistics publishers publish1_idx partition p1

用法 当与表名和索引名一起使用时,update index statistics 将为指定索引 中的所有列更新统计信息。如果只与表名一起使用,则 update index statistics 为表的所有索引中的所有列更新统计信息。

如果对大表运行 update index statistics,则在 tempdb 不够大,无法处 理该命令时,该命令会失败并生成错误号 1105

指定未建索引列的名称或索引的非前导列的名称会生成该列的统计 信息而不创建索引。

为正在更新其统计信息的每个索引列创建直方图统计信息。

为正在更新其统计信息的索引列的所有前缀子集创建密度统计信息。

如果对特定分区使用 update index statistics,也将隐式更新全局统计 信息。

分区统计信息充当创建全局统计信息的输入并启用每分区 DDL 操 作。全局统计信息由优化程序使用。

update index statistics 也为该命令所更新的表的每个数据和索引分区 重新生成和更新存储在 systabstats 中的表统计信息。如果为特定的 数据分区运行 update index statistics 命令,则只为该数据分区和所有 本地索引分区生成和更新表统计信息。跳过全局索引。如果对特定 的索引分区运行 update index statistics,则只更新该索引分区的表统 计信息。

with consumers 子句设计用于 RAID 设备上的分区表,这些设备对 Adaptive Server 显示为单个 I/O 设备,但可以提供并行排序所需的高 吞吐量。请参见 《性能和调优指南》中的 “并行排序”。


update index statistics 命令可生成一系列更新统计信息操作,这些操 作与索引级和列级等效命令使用相同的锁定、扫描和排序。例如, 如果 salesdetail 表在 salesdetail (stor_id, ord_num, title_id) 上有名为 sales_det_ix 的非聚簇索引,则 update index statistics salesdetail 命令将 执行以下 update statistics 操作:

update statistics salesdetail sales_det_ix update statistics salesdetail (ord_num) update statistics salesdetail (title_id)

使用基于散列的统计信息

仅当散列方法生成的直方图与排序方法生成的直方图精确度及质量 相同时 (低域情况), partial_hashing 参数才会将散列用于列,否 则, partial_hashing 参数会针对高域情况使用排序方法。

某些情况下 (高域情况),散列方法生成的直方图可能没有排序方 法生成的直方图精确。

尽管基于散列的统计信息不需要 tempdb 磁盘空间或排序所使用的过 程高速缓存,但它可能会使用大量的 tempdb 缓冲区高速缓存。

用于 no_hashing 参数的大规模排序可能会清除语句高速缓存中的语 句和存储过程,从而释放过程高速缓存以支持排序。

max_resource_granularity 限制用于散列或 partial_hashing tempdb 缓 冲区高速缓存量。不会影响 no_hashing 参数或排序使用的内存量。

如果包括 partial_hashing 参数,并且存在指示高域列的先前的列直方 图,则 Adaptive Server 会假定此列需要基于排序的统计信息。如果 不存在先前的列直方图,则 Adaptive Server 会假定此列为低域,直 到达到高域限制为止。

标准 符合 ANSI SQL 的级别Transact-SQL 扩展。

权限 要运行 update index statistics,您必须是表所有者或具有表的 update statistics 权限的用户。

另请参见 命令 delete statistics, update all statistics, update statistics, update table statistics.

文档 《性能和调优指南》 .




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