远程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:

以下官方手册为SAP IQ 16.0 SP03中文版:

  1. SAP Sybase IQ 简介
  2. 新功能摘要
  3. IQ 发行公告(linux)
  4. IQ 快速入门(unix)
  5. 安装和配置指南(linux)
  6. 管理:备份、恢复和数据恢复
  7. 管理:数据库
  8. SAP Sybase IQ 错误消息
  9. 管理:全球化
  10. IQ 许可选项指南
  11. 管理:装载管理
  12. IQ 迁移
  13. 管理:Multiplex
  14. 性能和调优指南
  15. IQ 编程
  16. 参考:构件块、表和过程
  17. 参考:语句和选项
  18. 管理:内存行级版本控制
  19. 管理:空间数据
  20. IQ 非结构化数据分析
  21. 用户定义的函数
  22. 管理:用户管理和安全
  23. 实用程序指南

 


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

dbvalid 数据库管理实用程序

dbvalid 实用程序是校验实用程序,用于对目录存储中部分或所有 SQL Anywhere 表的 索引和键值进行校验。

验证实用程序扫描整个表,并在表上定义的每个索引和键中查找每个记录。缺省情况 下,验证实用程序使用快速检查选项。

image

注意: 使用 dbvalid 实用程序可以轻松地验证目录存储表,但不能验证 IQ 主存储表。 可使用 sp_iqcheckdb 存储过程验证 IQ 主存储表。

image

可以在系统的命令行级别访问 dbvalid 实用程序,这一访问途径有助于将 dbvalid 并入 批处理文件或命令文件。


语法

image

dbvalid [ options ] [object-name,... ]


参数

下表列出了 dbvalid 实用程序的可用选项。


image

25. dbvalid 选项


选项

描述

object-name

要验证的表或索引(如果使用了 -i )的名称。

-c

提供数据库连接参数。用户 ID 必须具有 VALIDATE ANY OBJECT 系统特

keyword=value ; ...

权。

例如,下面的命令以用户 DBA、口令 sql 进行连接以验证 iqdemo 数据

库:

dbvalid -c uid=DBA;pwd=sql;dbf-c:\sybase

\IQ-16_0\demo\iqdemo.db

-o filename

将输出消息记录到文件。

-f

使用完整检查验证表。除了缺省验证检查之外,还执行数据检查 (-fd) 和索 引检查 (-fi)。此选项对应于 SQL Anywhere VALIDATE TABLE 语句的 WITH FULL CHECK 选项。根据目录存储的内容,此选项可能会极大延长验证所 需的时间。

image


选项

描述

-fd

使用数据检查验证表。除了缺省验证检查之外,还会检查所有 LONG

BINARYLONG VARCHARTEXT IMAGE 数据类型是否均可读取。

包含这些数据类型的条目可能跨越多页。在目录存储中:

• Domain - 用户定义数据类型。

IMAGE – 域,实现为 LONG BINARY.

TEXT – 域,实现为 LONG VARCHAR.

此选项指示数据库服务器检查每一条目使用的所有页。此选项对应于 SQL

Anywhere VALIDATE TABLE 语句的 WITH DATA CHECK 选项。根据目录

存储的内容,此选项可能会极大延长验证所需的时间。

-fi

使用索引检查验证表。除了缺省验证检查之外,还验证表上的每个索引。 此选项对应于 SQL Anywhere VALIDATE TABLE 语句的 WITH INDEX CHECK 选项。根据目录存储的内容,此选项可能会极大延长验证所需的时间。

-fx

使用快速检查验证表。除了缺省检查和数据检查之外,还检查表中的行数 是否与索引中的条目数匹配。此选项对应于 SQL Anywhere VALIDATE TABLE 语句的 WITH EXPRESS CHECK 选项。此选项不为每个行执行单独的索引 查找。

-i

每个 object-name 都是一个索引。验证索引,而不是验证表。确保表中确

实存在索引中引用的各行。对于外键索引,-i 还要确保主表中存在相应的

行。如果提供 table-name 而不是 index-name,将验证主键索引。在这种情

况下,对 dbvalid 来说,所提供的每个 object-name 值都代表索引而不是

表,其名称格式如下:

[ [ owner.]table-name.]index-name

必须是要创建索引的表的所有者或拥有 VALIDATE ANY OBJECT 系统特

权。

-q

安静地运行 - 不显示输出消息。

-s

使用校验和验证数据库页。校验和用于确定是否在磁盘上已修改了数据库

页。如果创建数据库时启用了校验和,则可以使用校验和验证目录存储。

校验和验证读取磁盘上的每个目录存储页,并计算其校验和。如果计算出

来的校验和与页面存储的校验和不同,则该页面已在磁盘上被修改,从而

会返回错误。任何无效目录存储页的页码都会显示在服务器消息窗口中。

不能将 -s -i-t 或任何 -f 选项一起使用。

-t

object-name 值的列表是表的列表。这也是缺省行为。


用法

使用 dbvalid 命令行实用程序,可以验证目录存储中的部分或所有表的索引和键。 dbvalid 扫描整个表,并确认每行都存在于相应的索引中。这与在每个目录存储表上运行 SQL Anywhere VALIDATE TABLE 语句相同。

image

注意: SAP Sybase IQ 中不支持 VALIDATE TABLEsp_iqcheckdb IQ 主存储表提供 了类似功能。

image

缺省情况下,验证实用程序使用快速检查选项。但是,如果指定了 -f-fd-fi-fn

-i,则不会使用快速检查选项。

如果目录存储表存在不一致,则 dbvalid 将报告错误。如果报告了错误,则可以删除 表的所有索引和键,然后重新进行创建。您还必须重新创建表的所有外键。

image

警告! 仅在没有任何连接对数据库进行更改时,才应验证表或整个目录存储;否则, 可能会报告误报的错误,指出某种形式的数据库不一致,而实际上并没有任何不一 致。

image


程序退出代码

描述

0

数据库验证成功

1

实用程序发生一般性故障

2

验证数据库时出错

7

找不到要连接的数据库(数据库名称错误)

8

无法连接到数据库(用户 ID/口令错误)

11

找不到要连接的服务器(服务器名称错误)

12

用于启动数据库的加密密钥不正确


示例

下面的命令以用户 DBA、口令 sql 进行连接以校验 iqdemo 数据库的目录存储:

image

dbvalid -c uid=DBA;pwd=sql;dbf-c:\sybase\IQ-16_0\demo\iqdemo.db





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