随着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数据库技术问题需要咨询,请联系我!
以下官方手册为ASE 15.7 ESD#2中文版:
- 新增功能公告 适用于 Windows、Linux 和 UNIX 的 Open Server 15.7 和 SDK 15.7
- 新增功能摘要
- 新增功能指南
- ASE 15.7 发行公告
- 配置指南(windows)
- 安装指南(windows)
- 参考手册:构件块
- 参考手册:命令
- 参考手册:过程
- 参考手册:表
- Transact-SQL® 用户指南
- 系统管理指南,卷 1
- 系统管理指南,卷 2
- 性能和调优系列:基础知识
- 性能和调优系列:锁定和并发控制
- 性能和调优系列:监控表
- 性能和调优系列:物理数据库调优
- 性能和调优系列:查询处理和抽象计划
- 性能和调优系列:使用 sp_sysmon 监控 Adaptive Server
- 性能和调优系列:利用统计分析改进性能
- 程序员参考 jConnect for JDBC 7.0.7
- Adaptive Server Enterprise 中的 Java
- 组件集成服务用户指南
- Ribo 用户指南
- 内存数据库用户指南
- Sybase Control Center for Adaptive Server® Enterprise
- 安全性管理指南
- 实用程序指南
sp_dbextend
说明 使您能够:
• 在数据库/段对和设备上安装自动数据库扩展过程。
• 为单个段和设备定义特定于站点的策略。
• 模拟数据库扩展机制的执行,在进行大容量卷装载前研究这一操作。 这些策略存储在 master 数据库的 sysattributes 表中。 所有参数都是字符串参数:
语法 sp_dbextend 'help'[, command]
sp_dbextend [['set', ['threshold', dbname, segmentname, freespace | 'database', dbname, segmentname {[ [, growby ] [, maxsize ] ]} | 'device', devicename { [ [, growby ] [, maxsize ] ] }] |
'clear', 'threshold', dbname, segmentname sp_dbextend 'clear', 'database' [, dbname [, segmentname ] ] sp_dbextend 'clear', 'device' [, devicename ]
sp_dbextend 'modify', 'database', dbname, segmentname,
{ 'growby' | 'maxsize' }, newvalue
sp_dbextend 'modify', 'device', devicename, { 'growby' | ' maxsize ' },
newvalue
sp_dbextend { 'list' | 'listfull' } [, 'database' [, dbname [, segmentname
[, order_by_clause ] ] ] ]
sp_dbextend { 'list' | 'listfull' } [, 'device' [, devicename [, order_by_clause ] ] ] sp_dbextend { 'list' | 'listfull' }, [ 'threshold' [ , @dbname
[ , @segmentname ] ] ]
sp_dbextend 'check', 'database' [, dbname [, segmentname ] ] sp_dbextend { 'simulate' | 'execute' }, dbname, segmentname [, iterations ] sp_dbextend 'trace', {'on' | 'off' }
sp_dbextend 'reload [defaults]'
sp_dbextend { 'enable' | 'disable' }, 'database' [, dbname [, segmentname ] ] sp_dbextend 'who' [, 'spid' | 'block' | 'all' ]
参数 set
设置应引发数据库、段或设备的阈值。参数包括:
• threshold – 指定在指定的数据库和段上安装阈值的可用空间级别。
您应该始终使用大小单位指示符 (例如兆字节)指定 freespace。 如果未指定任何大小单位,则认为 freespace 的值是段中的千字 节数。
• database – 指定数据库/段对的名称、数据库更改幅度以及数据库 的最大大小 (达到该最大大小时,扩展进程停止)。
growby – 是每次扩展尝试时数据库增长的比率,以单位指示符或 百分比值表示。 maxsize 是段的最大大小,达到最大大小后不再 进行扩展。这两个参数都是可选的。
• device – 定义设备的增长率和可以增长到的最大大小,用单位指 示符或百分比值表示。设备中的 maxsize 受 OS 磁盘限制。
clear
清除指定数据库和段或者指定设备以前设置的扩展规则。
modify
修改数据库和段以前设置的特定于站点的策略,例如 growby 和
maxsize。
使用 newvalue 指定为自动扩展设置的新值。
list
简要列出指定数据库、段、设备或指定段的阈值的现有规则,并以一 种可读格式显示来自 master.dbo.sysattributes 的数据。允许您按每个数 据库或每个设备查看规则。
显示当前有效的规则。
使用 order_by_clause 生成与缺省的名称、类型排序顺序不同的列表。
使用 threshold 可以显示当前在指定数据库中 (使用 @dbname)和指 定段中 (使用 @segment name)安装的所有阈值。
listfull
完全列出特定于站点的策略规则,并在 sysattributes 表中包括一个 comment 列,该列显示的 datetime 戳指出规则是何时设置、何时最后 修改的。
check
检查当前策略并验证它们与每个段中的当前空间布局是否一致。如果 发现任何策略设置多余、无效或不正确,则将显示一条警告消息。
simulate
根据 set 命令实施的当前策略集,模拟执行在运行期执行的数据库或 设备扩展方案。
iterations 指定模拟扩展的次数。
execute
使用当前策略集执行实际数据库/段或设备扩展。
reload defaults
在所有数据库、段和设备中用 growby 和 maxsize 的系统提供的缺省值 重新初始化 sysattributes,并将数据库或设备回复到初始缺省行为。
help
提供所有命令参数 (例如 set 或 list)的帮助信息或任何单个命令的帮 助信息。
trace
跟踪所有扩展进程中的阈值过程执行逻辑。
enable、 disable
在指定数据库段或设备上启用或禁用自动扩展过程。
who
显示当前运行的任何活动扩展进程。“<spid>”限制特定 spid 的输 出。请选择下列方法之一:
• block – 显示当前导致扩展进程阻塞的任务。
• all – 显示当前所有活动的任务。
freespace 指定可用空间为何值时在指定的段上安装阈值过程。一定要使用大小 单位指示符 (例如 MB)来指定 freespace。
dbname
是在其中安装阈值的数据库的名称。
segmentname
是包含在数据库 dbname 中的段。
devicename
是相关设备的逻辑名。
newvalue
指定当您修改数据库/段对或设备的策略时为自动扩展设置的新值。
order_by_clause
生成与 list 命令中的缺省排序不同顺序的列表。缺省顺序是名称、 类型。
iterations
指定模拟或执行扩展的次数。
growby
指定每次尝试执行阈值过程时指定的数据库段或设备增长的比率,以 单位指示符或百分比值表示。
maxsize
是段/数据库对或设备的最大大小,当达到该大小时,自动扩展必须 停止。
示例 示例 1 set thresholds – 在数据库 pubs2 中的日志段上安装 100 MB 的空间 扩展阈值:
sp_dbextend 'set', 'thresh', pubs2, logsegment, '100m'
示例 2 set database – 为 logsegment 段安装策略,每次扩展尝试的增长率 为 100 MB:
sp_dbextend 'set', 'database', pubs2, logsegment, '100m'
示例 3 set device – 扩展此设备直到达到 OS 磁盘空间限制或设备大小达 到 32GB:
sp_dbextend 'set', 'device', pubs2-datadev1, '100m'
示例 4 clear – 说明如何清除以前在 pubs2 中 logsegment 上安装的所有空 间扩展阈值:
sp_dbextend 'clear', 'thresh', pubs2, logsegment
您还可以清除在 pubs2 中的段 dataseg1 上安装的可用空间为 200 MB 的 空间扩展阈值:
sp_dbextend 'clear', 'thresh', pubs2, dataseg1, '200m'
示例 5 modify – 将每次扩展尝试的增长率指定为当前值的 5%:
sp_dbextend 'modify', 'da', pubs2, logsegment, 'growby', '5%'
如果以前未定义 maxsize,则命令可能失败:
sp_dbextend 'modify', 'device', pubs2_log_dev, 'maxsize', '2.3g'
示例 6 list – 简要列出所有数据库和设备的规则:
sp_dbextend 'list'
以下命令列出名称类似于 “pubs%”的所有数据库的规则:
sp_dbextend 'list', 'database', 'pubs%'
示例 7 listfull – 列出所有数据库和设备的规则,其中包括一个显示
datetime 戳的 comment 列:
sp_dbextend 'listfull'
示例 8 list threshold – 从 pubs2 数据库中发出该命令时,将列出 pubs2 数 据库中各段的阈值设置:
sp_dbextend 'list', 'threshold'
要检查特定段上的阈值,请使用:
sp_dbextend 'list', 'threshold', pubs2, 'logsegment'
示例 9 simulate – 模拟扩展两次,两次扩展都没有达到阈值:
sp_dbextend 'simulate', pubs2, logsegment, '2'
示例 10 execute – 执行自动扩展过程:
sp_dbextend 'execute', pubs2, logsegment
示例 11 help – 获得特定命令的帮助:
sp_dbextend help, 'set'
用法 • 在任何给定的数据库/段对上只能设置一个自动扩展阈值。如果尝试 安装阈值过程的另一个实例,即使是在不同的可用空间值上,也会 引发错误。
• 您不能设置系统提供的缺省值,只能修改它们。在修改系统缺省值 之后,可以通过重新运行 installdbextend 脚本或使用 reload defaults 命令重新设置它们。
• 若要在特定段中禁止自动增长,请将 growby 或 maxsize 指定为 0 或 根本不安装该阈值过程。如果为此参数指定 NULL,则缺省使用系 统指定的缺省 growby 率。
• 缺省情况下,如果设备的大小大于 40MB,则数据库的大小将增大 10%。如果数据库的大小小于 40 MB,则数据库的大小将增大 4 MB。 但是,您可以根据您的站点需要指定数据库大小调整限制。
• maxsize 是段的最大大小,当达到该大小时自动扩展进程停止,该值 并不是数据库的最大大小。
• 对于 default 数据库,没有系统指定的最大大小。如果未指定任何
maxsize 值,则数据库的大小仅受数据库设备物理大小的限制。
• 若要关闭特定设备上的自动增长功能,请将 growby 或 maxsize 指定 为 0。如果未指定 growby 的值,则使用缺省扩展率。
• 您可以将 maxsize 设置为大于设备上可用磁盘空间总量的值,但进 行扩展尝试时实际扩展将受可用磁盘空间的限制。
• 当使用此存储过程清除阈值时, dbname 和 segmentname 是必需的 参数。
• 当使用此存储过程清除数据库时,如果未提供 dbname 和 segmentname,则当前数据库和其中所有段的所有策略规则 (即 master.dbo.sysattributes 中的所有相关行)都将被删除。若要将所有 设置恢复为缺省值并重新启动,这是一个不错的方法。
• 当使用此存储过程清除设备时,如果未提供 devicename 的值,则不 会清除任何策略规则。您可以提供 devicename 来清除单个设备的策 略规则或使用 “%”清除所有设备的策略。
• 您可以使用模式指定 dbname、 devicename 和 segmentname,以便对 名称模式符合指定模式的对象执行 clear、 enable、 disable 和 list 操作。
• 必须先用 set 命令设置一个值或属性,然后才能修改它。如果先前 未设置任何值,则 modify 失败。 growby 和 maxsize 会被修改为 newvalue 指定的新值。
• newvalue 中指定的新值将在随后的扩展数据库或设备的尝试中一直 有效。即使 newvalue 小于数据库、段或设备的当前值,对象也不会 缩减。 newvalue 仅指定以后的扩展,不会影响当前大小。
• 如果对数据库使用 list 并且不提供任何 dbname 或 segmentname,则 将列出当前数据库中所有段的所有策略规则 (即, master.dbo.sysattributes 中的行)。
• 提供 dbname 和 segmentname 可以获得个别数据库和其中的段的策略 规则。
• 如果对设备名使用 list 并且不提供任何 devicename,则将列出所有设 备的缺省策略规则。您可以通过提供 devicename 对列出的内容进行 过滤以列出单个设备的策略规则或对 devicename 使用模式指示符。
• 一次只能模拟一个数据库/段对的扩展。 dbname 和 segmentname 都 是必需的参数。使用 execute 或 simulate 命令时,不能在 dbname 或 segmentname 中使用通配符模式。
• 设备的最大大小是 32 GB。
• 在使用 modify 和 simulate 后,请使用 reload 重新初始化您的数据库 和设备。 reload 将删除 master.dbo.sysattributes 中描述系统缺省行为 的任何现有行,然后装载新行。
• reload 不删除用户指定的策略。
• trace 打开或关闭整个服务器的跟踪功能。如果 trace 打开,当触发 阈值时,消息出现在服务器错误日志中。仅将 trace 用于故障排除。
权限 如果不具有 sa_role 特权的数据库所有者在某个段上安装了自动扩展过 程,则设备将不会扩展,这是因为用户不能运行 disk resize 命令。 Sybase 建议具有 sa_role 特权的用户在安装阈值过程时运行 set threshold 命令。
对 sp_dbextend 的权限检查因您的细化权限设置而异。
细化权限已启用 在启用细化权限的情况下:
• sp_dbextend clear database – 您必须是具有 own any database 特权的用户; 对于指定数据库,您必须是数据库所有者或者是对该数据库具有 own database 特权的用户。
• sp_dbextend clear device – 您必须是具有 manage disk 特权的用户。
• sp_dbextend clear threshold – 您必须是数据库所有者,或者是对数据库具有
own database 特权的用户。
• sp_dbextend execute – 您必须是数据库所有者,或者是对指定数据库具有
own database 特权的用户,并且必须具有 manage disk 特权。
• sp_dbextend simulate – 您必须是数据库所有者,或者是具有 own database
特权的用户。
• sp_dbextend enable/disable – 您必须是具有 own any database 特权的用户或 者是数据库所有者,或者对指定数据库具有 own database 特权。
• sp_dbextend list database – 如果指定 % 模式,您必须是具有 own any database 特权的用户。
• sp_dbextend list @ verbose=2 – 您必须是具有 own any database 特权的用户。
• sp_dbextend modify database – 对于 sp_dbextend 'modify'、 'database'、 'default',您必须是数据库所有者、对指定数据库具有 own database 特权的 用户,或者是具有 own any database 特权的用户。
• sp_dbextend modify device – 您必须是数据库所有者或者是具有 manage disk 特权的用户。
• sp_dbextend reload defaults – 您必须是具有 own any database 特权的用户。
• sp_dbextend set database – 您必须是数据库所有者或者是对指定数据库具 有 own database 特权的用户。
• sp_dbextend set device – 您必须是具有 manage disk 特权的用户。
• sp_dbextend set threshold – 您必须是数据库所有者或者是对指定数据库具 有 own database 特权的用户,并且必须具有 manage disk 特权。
• sp_dbextend trace – 您必须是具有 set switch 特权的用户。
细化权限已禁用 在禁用细化权限的情况下:
• sp_dbextend clear database – 您必须是数据库所有者或者是具有 sa_role 的 用户。
• sp_dbextend clear device – 您必须是具有 sa_role 的用户。
• sp_dbextend clear threshold – 您必须是数据库所有者或者是具有 sa_role 的 用户。
• sp_dbextend execute – 您必须是具有 sa_role 的用户。
• sp_dbextend simulate – 您必须是数据库所有者或者是具有 sa_role 的用户。
• sp_dbextend enable/disable – 您必须是数据库所有者或者是具有 sa_role 的 用户。
• sp_dbextend list database – 如果指定 % 模式,您必须是具有 sa_role 权限的 用户。
• sp_dbextend list @ verbose=2 – 您必须是具有 sa_role 的用户。
• sp_dbextend modify database – 如果 dbname 为缺省值,您必须是数据库所 有者或者是具有 sa_role 的用户。
• sp_dbextend modify device – 您必须是数据库所有者或者是具有 sa_role
的用户。
• sp_dbextend reload defaults – 您必须是数据库所有者或者是具有 sa_role 的 用户。
• sp_dbextend set database – 您必须是数据库所有者或者是具有 sa_role
的用户。
• sp_dbextend set device – 您必须是数据库所有者或者是具有 sa_role
的用户。
• sp_dbextend set threshold – 您必须是数据库所有者或者是具有 sa_role
的用户。
• sp_dbextend trace – 您必须是具有 sa_role 的用户。
审计 sysaudits 表的 event 和 extrainfo 列中的值如下所示:
审计的命令或访
事件 审计选项
问权限 extrainfo 中的信息
38 exec_procedure 执行过程 • 角色 – 当前活动角色
• 关键字或选项 – NULL
• 先前值 – NULL
• 当前值 – NULL
• 其它信息 – 所有输入参数
• 代理信息 – set proxy 有效时的初始登录名
另请参见 存储过程 . sp_dropthreshold 、 sp_modifythreshold
命令 . alter database、 create database、 disk init、 disk resize
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。+-------------------------------------华丽的分割线-------------------------------------------------------------------------