随着Sybase被完全整合到SAP下,Sybase原来的支持网站被SAP Support Portal取代。
只有购买了SAP服务的用户才能使用账号登录SAP Support Portal进行介质下载、补丁升级、报Incident等。
目前,原Sybase所有产品(包括:Adaptive Server Enterprise、Sybase IQ、Replication Server、PowerDesigner等)的官方手册仍然可以从https://infocenter.sybase.com/help/index.jsp进行浏览或下载。暂不清楚该网站https://infocenter.sybase.com/help/index.jsp何时会被完全迁移到SAP Support上!
Sybase官方手册英文版有html和pdf两种格式,而中文版手册只有pdf一种格式。为了国内Sybase用户更方便、快捷地搜索Sybase常见产品的官方手册内容,特将中文版Sybase官方手册转为html格式!
Sybase产品官方手册中文版的html格式所有内容的版权归SAP公司所有!本博客站长是Sybase数据库的铁杆粉丝!
如有Sybase数据库技术问题需要咨询,请联系我!
以下官方手册为SAP IQ 16.0 SP03中文版:
在一个或多个档案设备上恢复 SAP Sybase IQ 数据库备份。 快速链接:
转至参数 (第 412 页) 转至示例 (第 414 页) 转至用法 (第 415 页) 转至标准 (第 417 页) 转至权限 (第 417 页)
语法 语法 1
RESTORE DATABASE 'db_file'
'archive_device' [ FROM 'archive_device' ]…
… [ CATALOG ONLY ]
… [ KEY key_spec ]
… [ [ RENAME logical-dbfile-name TO 'new-dbspace-path']...
| VERIFY [ COMPATIBLE ] ]
语法 2
RESTORE DATABASE 'database-name' [ restore-option ...]
FROM 'archive_device' ...
restore-option
READONLY dbspace-or-file [, … ]
KEY key_spec
RENAME file-name TO new-file-path ...
参数
(返回顶部) (第 411 页)
• db_file – 要恢复的数据库的相对路径或绝对路径。可以是初始位置,也可以是目 录存储文件的新位置。
• key_spec – 用引号括起来的包含大小写字符、数字、字母和特殊字符的字符串。 防止该键受到命令解释器的解释或更改可能非常有必要。
• FROM – 指定要从其恢复的 archive_device 的名称,用单引号分隔。如果要使用 多个档案设备,请使用单独的 FROM 子句指定它们。不允许使用以逗号分隔的列 表。档案设备必须不同。FROM 子句的数量决定了与输入设备有关的并行 SAP Sybase IQ 尝试的次数。
备份/恢复 API DLL 实现可用于指定在打开档案设备时要传递给 DLL 的参数。对 于第三方实现,archive_device 字符串具有以下格式:
'DLLidentifier::vendor_specific_information' 以下是一个特定示例: 'spsc::workorder=12;volname=ASD002'
archive_device 字符串的长度最长为 1023 个字节。DLLidentifier 部分的长度必须为 1 到 30 个字节且只能包含字母数字和下划线字符。字符串的 vendor_specific_information 部分将传递给第三方实现,而不检查其内容。
注意: 只有某些第三方产品已使用此语法获得 SAP Sybase IQ 认证。有关其它用 法说明或限制,请参见发行公告。在使用任何第三方产品备份 SAP Sybase IQ 数 据库之前,请确保该产品已通过认证。请参见发行公告,或参见技术文档中 SAP Sybase IQ 产品的 SAP Sybase IQ 认证报告。
对于备份/恢复 API 的 SAP Sybase IQ 实现,无需指定磁带设备名或文件名以外的 信息。不过,如果您使用的是磁盘设备,则必须在执行恢复时指定与执行备份时
给定的数量相同的档案设备;否则,您用于执行恢复的设备的数量会与用于执行 备份的设备的数量不同。指定 UNIX 系统的非回绕磁带设备的 SAP Sybase IQ API DLL 档案设备的特定示例如下:
'/dev/rmt/0n'
• CATALOG ONLY – 仅从档案介质恢复备份标头记录。
• RENAME – 用于将一个或多个 SAP Sybase IQ 数据库恢复到一个新位置。指定 每个您要移动的 dbspace-name(按其在 SYSFILE 表中的显示方式)。将 new- dbspace-path 指定为该 dbspace 的新原始分区,或者新的完整路径名或相对路径 名。
如果创建数据库文件时使用的是相对路径,则缺省情况下这些文件将恢复至相对 于目录存储文件 (SYSTEM dbspace) 的位置,并且不需要使用重命名子句。如果创 建数据库文件时使用的是绝对路径且没有为文件指定重命名子句,则将其恢复至 其初始位置。
RENAME 子句中的相对路径名的工作方式与创建数据库或 dbspace 时相同:主 IQ 存储 dbspace、临时存储 dbspace 和消息日志将恢复至 db_file(目录存储)位置 的相对位置;用户创建的 IQ 存储 dbspace 将恢复至包含主 IQ dbspace 的目录的相 对目录。
请勿使用 RENAME 子句移动保存目录存储的 SYSTEM dbspace。若要移动目录存 储及任何相对于它创建且未在 RENAME 子句中指定的文件,请在 db_file 参数中 指定新位置。
• VERIFY [ COMPATIBLE – 命令服务器验证指定的 SAP Sybase IQ 数据库备份档 案以进行完整、增量、基于完整的增量或虚拟备份。备份必须是 SAP Sybase IQ 版本 12.6 或更高版本。验证过程会检查指定的档案有无恢复过程检查的相同错误,但 不执行写入操作。所有状态消息和检测到的错误都会被写入服务器日志文件中。
不能将 RENAME 子句与 VERIFY 子句一起使用;否则将报告错误。
备份验证过程可以在数据库所在主机之外的主机上运行。要运行 RESTORE DATABASE VERIFY,您必须具有 BACKUP DATABASE 系统特权。
如果在使用 VERIFY 时指定了 COMPATIBLE 子句,则会对现有的数据库文件进 行增量档案的兼容性检查。如果数据库文件不存在于调用 RESTORE DATABASE … VERIFY COMPATIBLE 的系统上,就会返回错误。如果在验证完整备份时指定了 COMPATIBLE,此关键字就会被忽略;在恢复完整备份时不需要进行兼容性检 查。
必须具有数据库和日志文件(.db 和 .log),才能验证完整备份中只读 dbspace 的备份。如果没有这些文件,请在不使用 dbspace 子句的情况下运行 RESTORE DATABASE … VERIFY 来验证整个备份。
注意: 备份档案的验证不同于数据库一致性检查程序 (DBCC) 验证模式 ( sp_iqcheckdb ‘verify...’)。RESTORE DATABASE VERIFY 验证备份档案 的一致性,以确保它可以恢复,而 DBCC 验证数据库数据的一致性。
在开始备份之前先运行 sp_iqcheckdb ‘verify...’。如果备份了不一致的 数据库,然后从同一备份档案进行恢复,则数据会继续处于不一致状态,即使 RESTORE DATABASE VERIFY 报告验证成功也是如此。
(返回顶部) (第 411 页)
• 示例 1 – 此 UNIX 示例从 Sun Solaris 平台上的磁带设备 /dev/rmt/0 和 /dev/ rmt/2 中恢复 iqdemo 数据库。在 Solaris 上,从磁带恢复必须指定回绕设备的使 用。因此,不要在设备名后面包括字母 "n"(指定“关闭时不回绕”)。若要随 RESTORE DATABASE 指定此功能,请使用适用于您的 UNIX 平台的命名约定。
(Windows 不支持此功能。)
RESTORE DATABASE 'iqdemo'
FROM '/dev/rmt/0' FROM '/dev/rmt/2'
• 示例 2 – 恢复名为 marvin 的加密数据库,该数据库用密钥 is!seCret 进行了加 密:
RESTORE DATABASE 'marvin'
FROM 'marvin_bkup_file1' FROM 'marvin_bkup_file2' FROM 'marvin_bkup_file3' KEY 'is!seCret'
• 示例 3 – 以下示例显示了 BACKUP DATABASE 语句和两种可能的 RESTORE DATABASE 语句的语法。(此示例使用 iqdemo 数据库中的对象仅是为了进行说 明。请注意,iqdemo 包括一个名为 iq_main 的用户 dbspace 示例,您的数据库 中可能不包括该示例。)
给定以下 BACKUP DATABASE 语句:
BACKUP DATABASE READONLY DBSPACES iq_main
TO '/system1/IQ16/demo/backup/iqmain'
可以使用下面任意一种 RESTORE DATABASE 语句来恢复 dbspace iq_main:
RESTORE DATABASE 'iqdemo' READONLY DBSPACES iq_main
FROM '/system1/IQ16/demo/backup/iqmain'
或
RESTORE DATABASE 'iqdemo'
FROM '/system1/IQ16/demo/backup/iqmain'
选择性备份会备份所有 READWRITE dbspace 或特定只读 dbspace 或 dbfile。选择 性备份是完整备份或增量备份的子类型。
注意:
• 可以执行 READONLY 选择性备份,并从该备份中恢复所有对象(如以上第二 个示例中所示)。
• 也可以执行包括全部内容的备份,并选择性地恢复只读文件和 dbspace。
• 可以执行多个只读文件和 dbspace 的 READONLY 选择性备份,并选择性地恢 复只读文件和 dbspace 的子集。请参见权限。
• 只有只读文件自备份以来尚未发生更改的情况下,才可以恢复只读备份。一旦 再次将 dbspace 设置为读写模式,只读备份将无效,除非将数据库的整个读写 部分恢复为只读 dbspace 原为只读模式的点上。
• 决定要使用的备份子类型(选择性或非选择性),然后一致地使用该类型。如 果必须要从非选择性备份转换为选择性备份(反之亦然),请始终在转换为新 的子类型之前执行一次非选择性完整备份以确保涵盖了所有变更。
• 示例 4 – 在不执行任何写入操作的情况下使用 VERIFY 子句来验证数据库档案的 语法:
RESTORE DATABASE <database_name.db> FROM '/sys1/dump/dmp1'
FROM '/sys1/dump/dmp2' VERIFY
在使用验证时,请指定不同的数据库名以避免出现数据库名不唯一 错误。例如, 如果原始数据库为 iqdemo.db,请改用 iq_demo_new.db:
RESTORE DATABASE iqdemo_new.db FROM iqdemo.bkp VERIFY
用法
(返回顶部) (第 411 页)
使用 RESTORE DATABASE 命令时,需要具有 SERVER OPERATOR 系统特权的用户 以独占方式访问数据库。通过将 DBA 开关设置为 -gd 可以获取此独占访问权,这是 启动服务器引擎时的缺省设置。
在启动数据库之前发出 RESTORE DATABASE 命令(必须连接到 utility_db 数据 库)。完成对相应类型的备份指定 RESTORE DATABASE 命令之后,该数据库即可使 用。数据库将处于上次恢复备份后第一个隐式 CHECKPOINT 结束时所存在的状态。 现在,可以指定 START DATABASE 以允许其他用户访问恢复后的数据库。
包括所有子句的完整 RESTORE DATABASE 命令的最大大小是 32 KB。
当恢复至原始设备时,请确保设备的容量足以容纳您要恢复的 dbspace。如果原始设 备大小不足以恢复 dbspace,则 SAP Sybase IQ RESTORE DATABASE 会检查原始设备 的大小并返回错误。
BACKUP DATABASE 允许指定完整备份或增量备份。有两种增量备份。INCREMENTAL 仅备份那些自上次执行任意类型(增量或完全)的备份之后已发生更改并已提交的 块。INCREMENTAL SINCE FULL 备份自上次完全备份后已发生更改的所有块。如 果在执行完全备份恢复后执行一次或多次增量备份(任一类型),则在连续的 RESTORE DATABASE 命令之间不允许对数据库进行任何修改。此规则防止从需要进
行崩溃恢复的数据库或已进行修改的数据库的增量备份执行恢复。您仍可以使用“从 完全备份恢复”,以覆盖此类数据库。
在开始完全恢复之前,您必须删除以下两个文件:目录存储文件(缺省名为
dbname.db)和事务日志文件(缺省名为 dbname.log)。
如果对增量备份进行恢复,则 RESTORE DATABASE 可以确保以恰当的顺序访问备份 介质集。此顺序为:首先恢复最后的完全备份磁带集,接着是第一个增量备份磁带 集,然后是更近一些的磁带集,以此类推,最后是最近的增量备份磁带集。如果具有 SERVER OPERATOR 系统特权的用户生成了 INCREMENTAL SINCE FULL 备份,则
只需要完全备份磁带集和最近的 INCREMENTAL SINCE FULL 备份磁带集;不过, 如果自执行 INCREMENTAL SINCE FULL 后又执行了 INCREMENTAL 备份,则还必 须应用此备份。
SAP Sybase IQ 确保恢复顺序是正确的,否则它会显示错误。在恢复期间发生任何其 它错误均会导致将数据库标记为损坏并将使数据库不可用。若要清理损坏的数据库, 请从完全备份执行恢复,然后再恢复任一附加增量备份。由于很可能是这些备份之一 损坏,因此您可能需要忽略较晚的备份集而使用较早的备份集。
要从档案备份恢复只读文件或 dbspace,当发出 RESTORE DATABASE 语句时,数据库 可以正在运行,管理员可以连接到数据库。如果只读文件路径名与数据库系统表信息 匹配,则无需与备份中的名称相匹配。
数据库必须未处于运行状态才能恢复 READWRITE FILES ONLY 或所有文件备份的 FULL、INCREMENTAL SINCE FULL 或 INCREMENTAL 恢复。要恢复只读文件的
备份,数据库可以正在运行,也可以未在运行。当恢复只读 dbspace 中的特定文件 时,该 dbspace 必须处于脱机状态。当恢复读写 dbspace 中的只读文件时,该 dbspace 可处于联机或脱机状态。恢复将关闭只读文件,恢复文件,并在恢复结束时重新打开 这些文件。
可使用选择性恢复来恢复只读 dbspace,条件是该 dbspace 仍处于相同的只读状态。 其它 RESTORE DATABASE 问题:
• RESTORE DATABASE 至磁盘时,不支持将原始设备用作档案设备。
• 在使用磁带之前,SAP Sybase IQ 不回绕磁带;当回绕磁带设备时,只是在使用磁 带之后回绕磁带。必须在启动恢复之前将每个磁带放在 SAP Sybase IQ 数据的开 始处。
• 在执行备份和恢复操作过程中,如果 SAP Sybase IQ 无法打开档案设备(例如, 当它需要装载介质时)并且 ATTENDED 选项为 ON,则会等待十秒钟,以在您将 下一磁带放入驱动器后重试。它将无限期地继续这些尝试,直至成功或使用 Ctrl+C 终止操作。
• 如果按 Ctrl+C,RESTORE DATABASE 将失败并将数据库返回至其在恢复开始前的 状态。
• 如果使用磁盘条带化,则经过分条的磁盘将被视为单个设备。
• 在恢复过程中,SYSTEM dbspace 的 SYSFILE 系统表中的 file_name 列不会更 新。对于 SYSTEM dbspace,在创建数据库时,file_name 列始终显示其名称。 SYSTEM dbspace 的文件名是数据库文件的名称。
(返回顶部) (第 411 页)
• SQL - ISO/ANSI SQL 语法的服务商扩充。
• SAP Sybase 数据库产品 - 不受 Adaptive Server 支持。
(返回顶部) (第 411 页)
执行此语句所需的权限是通过 -gu 服务器命令行选项设置的,如下所示:
• NONE – 任何用户都不能发出此语句。
• DBA – 需要 SERVER OPERATOR 系统特权。
• UTILITY_DB – 只有能够连接到 utility_db 数据库的那些用户才能发出此语 句。
另请参见
• BACKUP DATABASE 语句 (第 84 页)
Sybase SQL Anywhere数据库恢复工具ReadASADB:
之前就已经研发成功了能够从Sybase SQL Anywhere的DB文件中恢复数据的工具: ReadASADB。此工具支持ASA v5.0, v6.0, v7.0, v8.0, v9.0, v10.0, v11.0, v12.0, v16.0, v17.0等版本。
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具。
恢复Sybase SQL Anywhere的工具在国内处于领先水平。
Sybase SQL Anywhere数据库恢复工具ReadASADB功能
能够从损坏的SQL Anywhere数据文件(.db)和UltraLite数据文件(.udb)上提取数据的非常规恢复工具
- 适用于所有的SQL Anywhere版本 包括:5.x,6.x,7.x,8.x,9.x,10.x,11.x,12.x,16.x,17.x
- 适用于所有的UltraLite版本
- 能够恢复出来表结构和数据
- 能够恢复自定义数据类型
- 能够恢复存储过程等对象的语法
- 能够导出到目标数据库
- 能够导出到SQL文件并生成导入脚本
- 支持多种字符集,包括:cp850、cp936、gb18030、utf8等
- 能够恢复未加密或者简单加密类型的数据
- 简单易用
- 限制:不支持AES加密的数据文件
SQL Anywhere数据库非常规恢复工具ReadASADB使用介绍
Sybase SQL Anywhere数据库恢复工具ReadASADB适用场景
各种误操作:
- 误截断表(truncate table)
- 误删除表(drop table)
- 错误的where条件误删数据
- 误删除db或log文件
- 误删除表中的字段
Sybase SQL Anywhere数据库恢复工具ReadASADB的应用场景:
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
7、*** ERROR *** Assertion failed: 201417 (7.0.4.3541) Invalid count or free space offset detected on a table page
8、Internal database error *** ERROR *** Assertion failed: 201425 (8.0.3.5594) Invalid count or free space offset detected on a free list page -- transaction rolled back.
9、Internal database error *** ERROR *** Assertion failed: 100702 (8.0.1.2600) Unable to modify indexes for a row referenced in rollback log -- transaction rolled back
Sybase ASE数据库恢复工具READSYBDEVICE:
一个不依赖数据库管理系统、直接从Sybase数据库设备文件上提取数据的业内领先的恢复工具!能够从损坏的Sybase ASE设备文件(.dat)上提取数据的非常规恢复工具。
Sybase ASE数据库恢复工具READSYBDEVICE的主要功能:
- 被勒索病毒加密数据文件及备份文件情况下的恢复;
- 系统崩溃只剩下数据文件的情况下的恢复,甚至数据库文件不存在而只有损坏的备份文件情况下的恢复;
- 因断电、硬盘坏道等造成数据库文件损坏情况下的恢复;
- delete数据恢复、误update数据恢复、误删除表(drop)恢复、误truncate表恢复 等;
- 各种Sybase内部系统表损坏、索引错误的修复;
- master数据库损坏而无法正常运行情况下的恢复;
- Sybase数据库被标记为可疑,不可用等情况的恢复;
- Sybase数据库中数据文件内部出现坏块情况下的恢复;
- Sybase数据库无数据文件但有日志文件的情况下的恢复;
- Sybase数据库只有数据文件无任何日志文件的情况下的恢复;
- Sybase数据文件被误删除情况下的碎片提取恢复;
- 磁盘阵列上的Sybase数据库被误格式化情况下的数据库恢复;
- 数据库sysobjects等系统表损坏无法正常应用情况下的恢复;
- Sybase数据库还原数据库出现失败情况下的恢复;
- Sybase数据库只剩下损坏的备份文件情况下的恢复。
Sybase ASE数据库恢复工具READSYBDEVICE支持的版本:
Sybase ASE 11.0.x,11.5.x,11.9.x,12.0.x,12.5.x,15.0.x,15.5.x,15.7.x,16.0.xSQL Server数据库恢复工具SQLRescue:
一个不依赖数据库管理系统、直接从SQL Server数据库文件上提取数据的业内领先的恢复工具!能够从损坏的SQL Server数据库文件(.mdf)上提取数据的非常规恢复工具。
SQL Server数据库恢复工具SQLRescue的主要功能:
- 系统崩溃只剩下数据文件的情况下的恢复,即无日志文件或者日志文件损坏情况下的恢复;
- 断电导致数据库文件损坏情况下的恢复;
- 硬盘坏道造成数据库损坏情况下的恢复;
- 数据文件内部存在坏页情况下的恢复;
- 企业管理器误删除数据表记录,管理软件误删除数据表记录的恢复;
- 并闩锁错误、格式化、误删除后导致软件不能使用的情况;
- 无法读取并闩锁页sysindexes失败情况下的修复;
- 数据文件被误删除情况下的碎片提取恢复;
- 系统表损坏、索引错误、误删除数据库表、删除记录的数据找回;
- master数据库损坏而无法正常运行情况下的恢复;
- 数据文件无法附加情况下的数据恢复;
- 数据库被标记为可疑,质疑,不可用等情况的恢复;
- 数据库sysobjects等系统表损坏情况下的恢复;
- 数据被误(drop、delete、truncate)删除表数据的恢复,误update后的数据恢复等;
- 还原时报一致性错误,错误823等情况下的数据恢复,各种错误提示的数据库文件修复;
- 数据库被误格式化等情况下的数据库恢复;
- 日志收缩造成数据库损坏情况下的恢复;
- 仅剩损坏的备份文件情况下的恢复。
SQL Server数据库恢复工具SQLRescue技术特点:
只要SQL Server数据库的数据文件存在,我们就有办法帮您从数据文件中找回重要数据。- 从数据文件中直接恢复数据
- 不能附加时直接恢复数据并生成新的数据库
- 系统表损坏的数据库修复
- 快速修复SQL 823错误、连接中断错误
SQL Server数据库恢复工具SQLRescue支持的版本:
Microsoft SQL Server 7.0, 2000, 2005, 2008, 2008R2, 2012, 2014, 2016, 2017,2019。+-------------------------------------华丽的分割线-------------------------------------------------------------------------