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

 


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

远程服务器


对于本地服务器和要调用的每个远程服务器,使用 sp_addserver 将条目 添加到 sysservers 表中。 sp_addserver 语法为:

sp_addserver server_name [,server_class [,network_name]]

其中:

server_name 是用于标识服务器的唯一名称。


server_class 是服务器的类型。以下几节中说明支持的服务器类和每 个类中服务器的类型。缺省设置为服务器类 ASEnterprise


image

注释 组件集成服务不再支持服务器类 db2

image


network_name interfaces 文件中的服务器名。此名称可以与 server_name 相同,也可以不同。 network_name 有时称为物理名。 缺省值为与 server_name 相同的名称。


image

注释 在各服务器上需要有相同的排序顺序和大小写。

image


服务器类 ASEnterprise

Adaptive Server 使用服务器类 ASEnterprise。当组件集成服务与此类中的 服务器首次建立连接时,组件集成服务确定 Adaptive Server 版本并基于 找到的版本确定服务器功能。


服务器类 ASAnywhere

具有服务器类 ASAnywhere 的服务器是 Adaptive Server Anywhere 的一个 实例:

• Adaptive Server Anywhere 9.0 或更高版本


服务器类 ASIQ


具有服务器类 ASIQ 的服务器为 Adaptive Server IQ 12.5 版或更高版本。


服务器类 direct_connect

具有服务器类 direct_connect 的服务器是一个基于 Open Server 的应用程 序,该应用程序符合 direct_connect 接口规范。

使用服务器类 direct_connect 且基于 Open Server 的应用程序是访问所有 外部非 Sybase 数据源的首选方式。

已启用组件集成服务的 Adaptive Server 可与客户端和基于 Open Server 的应用程序进行交互。例如,客户端应用程序可与 Adaptive Server 上的 CIS 交互, CIS 通过网络与 DirectConnect (如 Oracle Informix)交 互。 DirectConnect 也可以直接访问客户端应用程序,客户端应用程序也 可以直接访问 DirectConnect


服务器类 sds


具有服务器类 sds 的服务器符合 Adaptive Server Specialty Data Store Developer’s Kit (《Adaptive Server Specialty Data Store 开发人员工具 包》)手册中所描述的 Specialty Data Store™ 接口要求。 Specialty Data Store 是用于与 Adaptive Server 进行交互的 Open Server 应用程序。


服务器类 RPCServer

配置了 RPCServer 类的服务器无法处理 RPC 以外的任何命令。此类中的 服务器无法参与分布式事务,组件集成服务也不会尝试向配置了此类的 服务器发送 SQL 语句。

要向 Backup Server XP Server 发送 RPC,必须启用 sp_serveroption negotiated login s server logins

通常,此类中的服务器是客户编写的 Open Server 应用程序,这些应用 程序用于执行自定义操作或使作为一次或多次 RPC 的结果生成的数据 对 Adaptive Server 应用程序可用。此类型的应用程序仅需要以下 Open Server 事件处理程序:

• SRV_CONNECT — 处理和鉴定来自 CIS 或客户端应用程序的登录 请求。

• SRV_DISCONNECT — 处理来自 CIS 或客户端应用程序的断开连接 请求。

• SRV_ATTENTION — 处理来自 CIS 或客户端应用程序的取消请求。


• SRV_RPC — 处理来自 CIS RPC。处理 RPC 可能生成一个结果 集,CIS 会将该结果集转移到 ASE 客户端(CIS 代表此客户端转移 RPC)。

使用此服务器类,可以编写支持映射到 RPC 代理表的 CIS 代理表的

Open Server 应用程序:

create existing table myRPCtable (

<column description(s)

)

external procedure at 'myRpcServerName...rpcname'


连接管理


代表客户端连接到远程服务器时,组件集成服务使用 Client-Library 函 数。为给定客户端首次建立与远程服务器的连接后,除非客户端与组件 集成服务断开连接,否则连接将始终保持打开。


image

注释 当连接第一次使用组件集成服务功能时,它会与一个 Adaptive Server 引擎密切连接。 PSS 标志 POMNI_AFFINITY_SET 会被设置并且 不会被自动清除。

image


不通过 interfaces 文件连接到远程服务器

不使用目录服务 ldap 中的相应条目或 interfaces 文件即可建立与远程服务 器的连接。组件集成服务通过使用 CT-Library 连接属性 CS_SERVERADDR 来实现这一过程,该属性允许按以下格式指定服务器:

"hostname.domain.com:99999" "hostname:99999" "255.255.255.255:99999"

其中 99999 为端口号,hostname 表示为简单名称、IP 地址或完整的域名。 按如下格式输入名称 (使用带网络名参数的 sp_addserver):

sp_addserver S1, ASEnterprise, "myhost.sybase.com:11222"

或:

sp_addserver S1, ASEnterprise, "192.123.321.101:11222"


网络名的这种用法具有一些限制:

• Adaptive Server 节点处理器无法识别此语法。

• Replication Agent 线程无法识别此语法。 如果使用了此语法,则无论配置了 interfaces 文件还是 LDAP 服务器,

CT-Library 都不会尝试从目录服务中查找连接信息。

如果配置了 SSL 而且拥有指向服务器文档中 SSL 部分的指针,则可使 用可选的 SSL 语法:

"hostname.domain.com:99999:SSL" "hostname:99999:SSL" "255.255.255.255.99999:SSL"

有关为 SSL 配置 Adaptive Server 的详细信息,请参见 《系统管理指南: 第一卷》中的第 19 章 “数据的保密性”。


LDAP 目录服务


LDAP 目录服务意味着不需要在客户端和服务器中使用 interfaces 文件。 Adaptive Server 和组件集成服务均支持 LDAP 服务以获得服务器信息。 当尝试建立与远程服务器的连接时,组件集成服务指示 Open Client 软 件引用 interfaces 文件或 LDAP 服务器,除非 sp_addserver 的网络名参数 包含冒号 ( : )

仅当配置文件 ( libtcl.cfg ) 指定 LDAP 服务时,组件集成服务才会使用它。 可在 $SYBASE/$SYBASE_OCS/config/libtcl.cfg

$SYBASE/$SYBASE_OCS/config/libtcl64.cfg (对于 64 位应用程序)中找 到 libtcl.cfg


image

注释 当在 libtcl.cfg 中指定了 LDAP 服务器时,只能从 LDAP 服务器中 获得服务器信息,并且 Adaptive Server 和组件集成服务忽略任何 (传统 的) interfaces 文件。

image


SSL 的安全通信

通过使用 SSL,可以建立从组件集成服务到支持 SSL 协议 (Adaptive Server 和某些 DirectConnect)的任何数量的远程服务器的安全连接。

组件集成服务按以下方式处理 SSL 连接:

受托根文件的位置已确定。如果当前服务器已启用 SSL,则所有外 发组件集成服务连接将使用与 Adaptive Server Enterprise 相同的受托 根文件。

如果当前服务器已启用 SSL,将建立连接属性以定义 Open Client 回 调,该回调用于响应来自启用 SSL 的远程服务器的询问。如果当前 服务器未启用 SSL,则所使用的回调无法建立与启用 SSL 的远程服 务器的任何连接。


受托根文件


当将受托根文件正确地添加到系统时,受托根文件包含对其它服务器的 认证,本地服务器将这些服务器作为受托服务器对待。如果已定义了

$SYBASE_CERT,则本地服务器 (Adaptive Server) 可以在以下文件中访 问受托根文件:

$SYBASE_CERT/trusted.txt

否则它位于:

$SYBASE/$SYBASE_ASE/certificates/servername.txt

UNIX 平台上:

%SYBASE%\%SYBASE_ASE%\certificates\servername.txt

Windows 平台上:

其中 servername 是当前 Adaptive Server 的名称。


使用 Kerberos 的安全通信

Kerberos 的基于网络的鉴定是一种单点登录功能,能让 Kerberos 客户端 通过 Kerberos 系统进行鉴定,从而能够连接到任何支持 Kerberos 鉴定的 应用程序。由于存储了一个中央口令,因此无需指定口令即可连接到支 持 Kerberos 的应用程序。

Adaptive Server 支持的 Kerberos 5 版还提供一个叫做凭据委托或票 据转发的功能,可让 Kerberos 客户端在连接到服务器时委托凭据,从而 允许服务器初始化 Kerberos 鉴定以便代表 Kerberos 客户端进一步连接到 其它服务器。


凭据委托功能当前仅针对 MIT Kerberos GSSAPI 4.x 版和更高版本进 行了认证。客户端在连接到 Adaptive Server 之前必须先从 Kerberos 系统 获取可委托的凭据 (在 UNIX 系统上使用 kinit -f 选项)。

连接到 Adaptive 服务器的 Kerberos 客户端可以请求对 Adaptive Server 进 行远程过程调用 (RPC),而且在对远程 Adapter Server 进行常规的分布式 查询处理请求时,使用 Kerberos 凭据委托功能通过 CIS 实现。基于节点 处理器的远程服务器连接不支持 Kerberos 鉴定。

若要使用 Kerberos 统一登录,系统安全员可以使用以下命令为远程

Adaptive Server CIS 启用 Kerberos 安全性机制。

sp_serveroption [server, optname, optvalue]

例如,当当前登录用户使用 Kerberos 机制进行鉴定时,以下在本地服务 器 S1 上执行的命令对与远程服务器 S2 的连接启用 Kerberos 鉴定。

sp_serveroption s2, “security mechanism”, csfkrb5


Kerberos 安全服务


消息保密性


一旦对与远程 Adaptive Server 的连接启用了 Kerberos 安全性机制,便可 使用 Kerberos 提供的下列一个或多个安全服务:

消息保密性 通过网络对数据进行加密,以防止非授权泄露。

消息完整性 验证通信在传输过程中未被修改。

相互鉴定

验证客户端和服务器的标识。启动远程连接的本地服务器,可以请 求对所有针对 Adaptive Server 的远程连接请求进行相互鉴定。这能 让客户端验证远程服务器的身份。


image

注释 Kerberos 提供的可选安全服务在缺省情况下处于禁用状态。

image


在本地服务器 S1 上执行的以下命令为所有使用 Kerberos 鉴定与远程服 务器 S2 建立的连接设置消息保密性。

sp_serveroption s2, “use message confidentiality”, true


消息完整性


在本地服务器 S1 上执行的以下命令为所有使用 Kerberos 鉴定与远程服 务器 S2 建立的连接设置消息完整性。

sp_serveroption s2, “use message integrity”, true


消息鉴定


在本地服务器 S1 上执行的以下命令为所有使用 Kerberos 鉴定与远程服 务器 S2 建立的连接设置相互鉴定。

sp_serveroption s2, “mutual authentication”, true


远程 Adaptive Server Kerberos 主体名的配置

Adaptive Server 主体名为服务器的缺省名称。由于 Adaptive Server 的主 体名可以不同于服务器名,因此,系统安全员可以为每台远程服务器指 定服务器主体名。

以下命令为远程服务器 S2 指定远程 Adaptive Server 主体名。

sp_serveroption S2, “server principal”, ase2@myrealm.com


组件集成服务远程过程调用的配置

CIS 使用持久 client-library 连接来处理 RPC 请求。 CIS 通过确定客户端 是否已与 RPC 要传递到的服务器建立了 client-library 连接来处理外发 RPC。如果不存在连接,则会建立连接。

若要启用 CIS RPC 处理机制,请将配置选项 cis rpc handling 设置为 1。如 果未启用, Kerberos 用户就必须临时启用 CIS RPC,才能让当前会话使 用此功能。

以下命令为当前登录会话启用 CIS RPC 处理。

set cis_rpc_handling on


为组件集成服务远程过程调用建立安全性

下面讲述如何为所有类型的 Adaptive Server CIS 连接启用 Kerberos

鉴定。

在下面的示例中,user1 是一个 Kerberos 用户,他登录到 Adaptive Server S1 并请求对远程 Adaptive Server S2 进行 RPC

1 interfaces 文件或目录服务中添加一个对应于服务器 S1 S2 的条 目以及对应于安全性机制的 secmech 行。


2 Kerberos 用户添加登录名 (如果不存在)。

create login user1 with password pwuser1

3 通过将配置选项设置为开启以启用安全性机制。

sp_configure “use security services”, 1

4 在本地服务器 S1 上,为对远程服务器 S2 执行的 CIS 启用 Kerberos

鉴定。


image

注释 这假定远程服务器 S2 仅从 S1 接收 CIS 命令请求。但是,如 果 S2 还请求对其它服务器执行的 CIS 命令,并且要求启用 Kerberos 鉴定,则 S2 上需要类似的配置。

image

a 在本地服务器 S1 上,添加远程服务器 S2

sp_addserver S2

b S1 上为对 S2 进行的外发 RPC 请求启用 Kerberos 安全性机 制。以下命令为当前登录会话启用 CIS RPC 处理。

sp_serveroption S2, "security mechanism", csfkrb5

只有在使用上述命令为远程服务器 S2 配置了安全性机制时,才会 启动对远程服务器 S2 进行的 RPC 请求的安全性机制鉴定。

如果配置了针对 S2 的安全性机制,并且用户 'user1' 的转发票据不可 用于本地服务器 S1,则不启动 RPC 连接。

如果没有为对远程服务器 S2 进行的 RPC 配置安全性机制,意思是 未设置服务器选项 security mechanism,则不会为对远程服务器 S2 进 行的 RPC 启动安全性会话的建立。这种情况下, CIS 将会针对远程 服务器 S2 启动基于口令的鉴定。如果没有指定外部登录名/口令映 射,则只要客户端与远程服务器连接, CIS 就会使用客户端的名称 和口令。使用 Kerberos 统一登录鉴定登录到 Adaptive Server 的客户 端 user1 将没有任何口令与登录会话相关联。系统管理员必须使用 用户 user1 sp_addexternlogin 来配置登录映射,才能连接到 S2 进 行 RPC 请求。如果没有为 user1 指定外部登录名和口令映射,则口 令将为空,与远程服务器之间的 CIS 连接将会失败。

user1 可以通过连接到服务器 S1 并请求凭据委托来请求在 S2 上执行 存储过程 sp_who,如下所示:

isql -Vd -S S1 S2...sp_who


user1 可以使用以下命令建立与远程服务器 S2 的直通连接:

connect to S2

user1 可以使用以下命令在远程服务器上执行查询:

sp_remotesql S2, "select @@authmech" go

sp_remotesql S2, “sp_who” go


安全问题


建立与远程 Adaptive Server 的连接时,如果 cis_rpc_handling set transactional_rpc on,则使用 Client-Library 函数而不是节点处理器。这 种建立连接的方法可以禁止远程服务器区分这些连接和其它客户端的连 接。因此,为允许或禁止与给定服务器的连接而在远程服务器上配置的 所有远程服务器安全性均不生效。

已启用组件集成服务的其它 Adaptive Server 无法将受托模式 用于远程服 务器连接。如果 Adaptive Server 与组件集成服务一起使用,则强制使用 所有可能的用户帐户来配置 Adaptive Server

口令是以加密的形式内部存储的。


CIS 中使用加密列


缺省情况下,加密和解密是由远程 Adaptive Server 处理的。 CIS 在远程 Adaptive Server 上进行一次性加密列检查。如果远程 Adaptive Server 支 持加密,则 CIS 会使用如下所示的与加密列相关的元数据更新本地 syscolumns 目录:

create proxy_table 可自动使用远程表中的任何加密列信息更新

syscolumns

create existing table 可自动使用远程表中的任何加密列元数据更新 syscolumns。在 create existing table column_list 中不允许使用 encrypt 关键字。如果 CIS 在远程表中找到任何加密的列,它会自动 将其标记为已加密。

不允许在包含加密列的位置执行 create table

不允许对代理表的加密列执行 alter table


select into existing 可选择源表中的纯文本并将其插入目标表中。然后, 本地 Adaptive Server 会在将该纯文本插入任何加密的列中之前对其 进行加密。

将从远程服务器的 syscolumns 目录更新以下列:

encrtype — 磁盘上数据的类型。

encrlen — 加密数据的长度。

status2 — 指示列已被加密的状态位。


远程服务器登录


为了完全支持远程登录, Client-Library 提供了一些连接属性,使组件集 成服务能够请求 server connection。此连接在接收服务器上被识别为服 务器连接 (而不是普通客户连接),允许该远程服务器通过使用 sysremotelogins 验证连接,如同该连接是由节点处理器创建的一样。

不会自动启用服务器连接。相反, SSO DBA 必须通过执行

sp_serveroption 来请求启用该功能:

exec sp_serveroption <server_name>, ‘server login’, true | false

如果当前服务器的 @@servername 全局变量为 NULL,则无法更改

server login 属性。

如果 server login 选项为 True,组件集成服务将使用 Client-Library 连接属 性来建立与指定服务器的连接。

将客户端应用程序指定的远程口令传递到远程服务器,而不做任何更改。 服务器登录中的远程口令的使用及其关联的规则与节点处理器连接关联 的口令使用和规则相同。

仅在以下情况下能够确定这些连接属性:

将服务器选项 server login 设置为 True

使用服务器类 ASEnterprise 来配置远程服务器。

为启用组件集成服务的服务器定义了本地服务器名 (即查询 select

@@servername 返回非 NULL 的结果)。


受托模式


如果为远程服务器设置了 “服务器登录”,则可将受托模式与组件集成 服务连接一起使用。


连接到 Backup Server XP Server

Adaptive Server 12.5.1 开始,组件集成服务可以将 RPC 发送到 Backup Server XP Server。在执行此操作之前,必须启用服务器选项 negotiated logins

exec sp_serveroption server_name, "negotiated logins", true

这样,组件集成服务就可以对 Sybase 提供的两种服务器之一发出的登 录询问做出响应。


映射外部登录名


调用组件集成服务的 Adaptive Server 用户需要登录名和口令才能访问远 程服务器。缺省情况下,组件集成服务用于连接远程服务器的用户名和 口令对与客户端用于连接 Adaptive Server 的用户名和口令相同。

组件集成服务支持以一对一的方式将 Adaptive Server 登录名和口令映射 到远程服务器登录名和口令。例如,使用存储过程 sp_addexternlogin, 可以将 Adaptive Server 用户 steve、口令 sybase 分别映射到 Oracle 登录 名 login1、口令 password1

sp_addexternlogin Oracle, steve, login1, password1

Adaptive Server 12.5 和更高版本中,可以提供多对一的映射,这样可以 向需要 Oracle 连接的所有 Adaptive Server 用户指派相同的登录名和口令:

sp_addexternlogin Oracle, NULL, login2, password2

一对一映射具有优先权,因此如果用户 steve 拥有 Oracle 的外部登录名, 则使用一对一映射而不是多对一映射。

此外,您可以将外部登录名指派给 Adaptive Server 角色。对于给定远程 服务器,可以使用此功能,为拥有特定角色的任何人指派相应的登录名/ 口令:

sp_addexternlogin Oracle, null, login3, password3, rolename


角色名指定角色的名称,而不是用户的名称。当具有此活动角色的用户 需要到 Oracle 的连接时,将使用该角色的相应登录名/口令来建立连接。 在为具有多个活动角色的用户建立与远程服务器的连接时,将搜索每个 角色的外部登录名映射,并使用找到的第一个映射来建立登录。这与 sp_activeroles 所显示的顺序相同。

sp_addexternlogin 的常规语法为:

sp_addexternlogin

<servername>,

<loginname>,

<external_loginname>,

<external_password> [, <rolename>]

<rolename> 是可选的;如果指定该项,则忽略 loginname。 这些功能的优先级如下:

如果定义了一对一的映射,则使用此映射。

如果未定义一对一映射,而角色处于活动状态并且可以找到其映射, 则使用该角色映射来建立远程连接。

如果未定义一对一映射,而角色处于活动状态并且可以找到其映射, 则使用该角色映射来建立远程连接。

如果上述条件均不为真,则使用 Adaptive Server 登录名和口令来建 立连接。

如果完成了角色映射,并且更改了用户的角色 (通过 set role),则断开 任何使用角色映射的远程服务器连接。

已对 sp_helpexternlogin 进行了更新,以便允许查看使用 sp_addexternlogin

添加的不同类型的外部登录。 sp_helpexternlogin 的语法为:

sp_helpexternlogin [<servername> [,<loginname> [,<rolename>]]]

所有三个参数均为可选参数,并且均可为 NULL

存储过程 sp_dropexternlogin 还接受 <rolename> 参数。如果指定了 <role name>,则忽略第二个参数 <login name>


远程服务器连接故障切换

如果设置了 interfaces 文件 (或 LDAP 目录服务)来定义故障切换配置, 则当与主服务器的连接失败时,组件集成服务会利用故障切换功能自动 连接到故障切换服务器。

执行以下配置步骤后,可以设置远程服务器来实现故障切换功能:

1 启用新的服务器选项 cis hafailover

exec sp_serveroption server_name, ’cis hafailover’, true

2 修改目录服务 (interfaces 文件或 LDAP 服务器中的服务器条目)以 指定故障切换服务器

例如,可通过在 interfaces 文件中添加以下命令,将服务器 S2 配置 为 S1 的故障切换服务器 (反之亦然),如下例所示:

S1

master tcp ether host1 8000 query tcp ether host1 8000 hafailover S2

S2

master ether host2 9000 query ether host2 9000 hafailover S1

有关 CS_HAFAILOVER 连接属性的详细讨论,请参见附录 C,在 《高 可用性系统中使用 Sybase 故障切换》。如果 cis hafailover 服务器选项为 true,组件集成服务器将使用 ct_con_props() API 来设置此属性。


远程服务器功能


Adaptive Server 首次与 sds direct_connect 类的远程服务器建立连接时, 它发出名为 sp_capabilities RPC 并等待返回结果集。此结果集描述远 程服务器的功能,使组件集成服务能够调整它与该远程服务器的交互以 利用可用的功能。组件集成服务根据其功能将尽可能多的语法转移到远 程服务器。




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