随着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_showoptstats
说明 sp_showoptstats 在功能上与 XML 文档中的 optdiag 独立实用程序类似, 但采用系统过程格式,它提取和显示系统表 (如 systabstats 和 sysstatistics)中的各种数据对象的统计信息和直方图。
语法 sp_showoptstats [[database_name.[owner].]table_name], [column_name], [h]
参数 database_name
为数据库的名称, sp_showoptstats 显示此数据库的统计信息和直方 图。 dbname 具有以下限制:
• 不支持跨数据库执行
• 您目前必须在指定数据库中才能执行 sp_showoptstats
• 如果未指定数据库, sp_showoptstats 则显示当前数据库的统计信 息和直方图
owner
是表所有者的名称。若未指定所有者的名称,则使用当前用户或
dbo。
table_name
为表的名称, sp_showoptstats 显示此表的统计信息和直方图。
table_name 具有以下限制:
• 如果未指定表, sp_showoptstats 则显示当前数据库中所有表的统 计信息和直方图。然而,为了缩短输出长度, sp_showoptstats 并 不显示数据库级别的列统计信息和直方图。
• table_name 必须存在于当前数据库中。
column_name
为列的名称, Adaptive Server 显示此列的统计信息和直方图。如果未 指定列, Adaptive Server 则显示指定表的所有列和索引的统计信息。 如果指定 column_name, sp_showoptstats 仅显示该列的统计信息和直 方图
h
显示过程的帮助信息。
示例 示例 1 显示 pubs2 数据库中所有用户表的统计信息:
1> use pubs2
2> go
1> sp_showoptstats 'pubs2..publishers'
2> go
示例 2 以 XML 格式显示 pubs2 数据库中 publishers 表的统计信息和直 方图:
1> sp_showoptstats publishers
<?xml version="1.0" encoding="UTF-8"?>
<optStats>
<procVersion>sp_showoptstats/1.1/AnyPlatform/AnyOS/Tues April 3 14:21:21 2012</procVersion>
<serverVersion>Adaptive Server Enterprise/15.7.0/EBF 20161 SMP ESD#02 Prelim#2/P/x86_64/Enterprise Linux/ase157x/3087/64-bit/FBO/Tue May 15 05:35:01 2012</serverVersion>
<serverName></serverName>
<specifiedDatabase>pubs2</specifiedDatabase>
<specifiedTableOwner></specifiedTableOwner>
<specifiedTable>publishers</specifiedTable>
<specifiedCol></specifiedCol>
<tables>
<tableOwner>dbo</tableOwner>
<tableName>publishers</tableName>
<clusteredIndStats>
<indName>pubind</indName>
<colList>"pub_id"</colList>
<stats>
<pgCnt>1</pgCnt>
<emptyPgCnt>0</emptyPgCnt>
<rowCnt>3.0000000000000000</rowCnt>
<fwdRowCnt>0.0000000000000000</fwdRowCnt>
<delRowCnt>0.0000000000000000</delRowCnt>
<CRCnt>1.0000000000000000</CRCnt>
<oamAllocPgCnt>2</oamAllocPgCnt>
<firstExtLeafPgs>0</firstExtLeafPgs>
<dataRowSz>39.3333333333333357</dataRowSz>
<indHeight>1</indHeight>
<joinDegree>0.0000000000000000</joinDegree>
<unusedPgCnt>14</unusedPgCnt>
<oamPgCnt>1</oamPgCnt>
<derivedStats>
<clusterRatio>0.0000000000000000</clusterRatio>
<spaceUtil>0.0072162426614481</spaceUtil>
<IOEfficiency>0.5000000000000000</IOEfficiency>
</derivedStats>
</stats>
</clusteredIndStats>
<colStats>
<colName>pub_id</colName>
<lastUpdate>May 15 2012 4:44:40:136PM</lastUpdate>
<cellDensity>0.3333333333333333</cellDensity>
<totalDensity>0.3333333333333333</totalDensity>
<select>default used (0.33)</select>
<inBetSel>default used (0.25)</inBetSel>
<rangeVal>0.3333333333333333</rangeVal>
<totalVal>0.3333333333333333</totalVal>
<avgColWidth>default used (4.00)</avgColWidth>
<statsVer>4</statsVer>
<histogram>
<colName>pub_id</colName>
<dataType>char(4)</dataType>
<requestedStepCnt>20</requestedStepCnt>
<actualStepCnt>6</actualStepCnt>
<samplingPct>0</samplingPct>
<TuningFact>20</TuningFact>
<steps>
<step>1</step>
<weight>0.00000000</weight>
<equation><</equation>
<value>"0736"</value>
</steps>
<steps>
<step>2</step>
<weight>0.33333334</weight>
<equation>=</equation>
<value>"0736"</value>
</steps>
<steps>
<step>3</step>
<weight>0.00000000</weight>
<equation><</equation>
<value>"0877"</value>
</steps>
<steps>
<step>4</step>
<weight>0.33333334</weight>
<equation>=</equation>
<value>"0877"</value>
</steps>
<steps>
<step>5</step>
<weight>0.00000000</weight>
<equation><</equation>
<value>"1389"</value>
</steps>
<steps>
<step>6</step>
<weight>0.33333334</weight>
<equation>=</equation>
<value>"1389"</value>
</steps>
</histogram>
</colStats>
<noStatsCol>city,pub_name,state
</noStatsCol>
</tables>
</optStats>
示例 3 显示过程的语法:
1> sp_showoptstats a,b,h
2> go
Usage:sp_showoptstats [[database.[owner].]table], [column], [option] (return status = 0)
用法 • 无法跨数据库执行 sp_showoptstats。
• 除非进行明确指定,否则不在系统表中包含 sp_showoptstats。
• 非打印和 univarchar 字符以十六进制格式显示。
• sp_showoptstats 显示全局级别和分区级别的统计信息。
• 当输出值大于为 @@textsize 设置的值时, Adaptive Server 将返回增 大 @@textsize 设置的消息,以便采用较大字体显示输出。
• 包含句点 (.) 的参数值需要带有双引号。
• 可以针对系统表发出 sp_showoptstats 命令。
• 如果仅指定数据库和所有者, sp_showoptstats 则不会返回统计信息。
DTD XML 输出
sp_showoptstats XML 输出的 DTD 文件为:
<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT optStats (procVersion, serverVersion, serverName?, specifiedDatabase?, specifiedTableOwner?, specifiedTable?, specifiedCol?, tables*)>
<!ELEMENT procVersion (#PCDATA)>
<!ELEMENT serverVersion (#PCDATA)>
<!ELEMENT serverName (#PCDATA)>
<!ELEMENT specifiedDatabase (#PCDATA)>
<!ELEMENT specifiedTableOwner (#PCDATA)>
<!ELEMENT specifiedTable (#PCDATA)>
<!ELEMENT specifiedCol (#PCDATA)>
<!ELEMENT tables (tableOwner, tableName, partitionCnt?, (tableStats|clusteredIndStats|indStats|partitionStats|partitionClusteredIndSt ats|partitionIndStats)*, (colStats|colPartitionStats)*, noStatsCol?)>
<!ELEMENT tableOwner (#PCDATA)>
<!ELEMENT tableName (#PCDATA)>
<!ELEMENT tableStats (tableName, stats)>
<!ELEMENT clusteredIndStats (indName, colList, stats)>
<!ELEMENT indName (#PCDATA)>
<!ELEMENT colList (#PCDATA)>
<!ELEMENT partitionStats (partition*, stats*)>
<!ELEMENT partition (#PCDATA)>
<!ELEMENT partitionIndStats (indName, partition, colList, stats)>
<!ELEMENT partitionClusteredIndStats (indName, partition, colList, stats)>
<!ELEMENT stats (pgCnt?, leafCnt?, (emptyPgCnt|emptyLeafCnt)?, CRCnt?, indCRCnt?, indPgCRCnt?, (dataRowCRCnt|leafRowCRCnt)?, rowCnt?, fwdRowCnt?, delRowCnt?, indPgCRCnt?, CRCnt?, oamAllocPgCnt?, (firstExtDataPgs|firstExtLeafPgs)?, (dataRowSz|leafRowSz)?, indHeight?, dataPages?, joinDegree?, unusedPgCnt?, oamPgCnt?, derivedStats?)>
<!ELEMENT pgCnt (#PCDATA)>
<!ELEMENT leafCnt (#PCDATA)>
<!ELEMENT CRCnt (#PCDATA)>
<!ELEMENT indCRCnt (#PCDATA)>
<!ELEMENT dataRowCRCnt (#PCDATA)>
<!ELEMENT leafRowCRCnt (#PCDATA)>
<!ELEMENT emptyPgCnt (#PCDATA)>
<!ELEMENT emptyLeafCnt (#PCDATA)>
<!ELEMENT rowCnt (#PCDATA)>
<!ELEMENT fwdRowCnt (#PCDATA)>
<!ELEMENT delRowCnt (#PCDATA)>
<!ELEMENT oamAllocPgCnt (#PCDATA)>
<!ELEMENT firstExtDataPgs (#PCDATA)>
<!ELEMENT firstExtLeafPgs (#PCDATA)>
<!ELEMENT dataRowSz (#PCDATA)>
<!ELEMENT leafRowSz (#PCDATA)>
<!ELEMENT indHeight (#PCDATA)>
<!ELEMENT dataPages (#PCDATA)>
<!ELEMENT joinDegree (#PCDATA)>
<!ELEMENT unusedPgCnt (#PCDATA)>
<!ELEMENT oamPgCnt (#PCDATA)>
<!ELEMENT rowClusterRatio (#PCDATA)>
<!ELEMENT derivedStats (clusterRatio, indClusterRatio?, (dataClusterRatio|rowClusterRatio)?, spaceUtil?, IOEfficiency?)>
<!ELEMENT clusterRatio (#PCDATA)>
<!ELEMENT indClusterRatio (#PCDATA)>
<!ELEMENT dataClusterRatio (#PCDATA)>
<!ELEMENT spaceUtil (#PCDATA)>
<!ELEMENT IOEfficiency (#PCDATA)>
<!ELEMENT indStats (indName, colList, stats?)>
<!ELEMENT colStats ((colName|colGroup)?, lastUpdate?, cellDensity?, totalDensity?, select?, inBetSel?, rangeVal?, totalVal?, avgColWidth?, statsVer? statsSamDen?, statsSamU?, histogram?)>
<!ELEMENT colGroup (#PCDATA)>
<!ELEMENT lastUpdate (#PCDATA)>
<!ELEMENT cellDensity (#PCDATA)>
<!ELEMENT totalDensity (#PCDATA)>
<!ELEMENT selectivity (#PCDATA)>
<!ELEMENT inBetweenSelectivity (#PCDATA)>
<!ELEMENT rangeVal (#PCDATA)>
<!ELEMENT totalVal (#PCDATA)>
<!ELEMENT avgColWidth (#PCDATA)>
<!ELEMENT statsVer (#PCDATA)>
<!ELEMENT statsSamDen (#PCDATA)>
<!ELEMENT statsSamU (#PCDATA)>
<!ELEMENT colPartitionStats (ptnName,(colName|colGroup)?, lastUpdate?, cellDensity?, totalDensity?, select?, inBetSel?, rangeVal?, totalVal?, avgColWidth?, statsVer? statsSamDen?, statsSamU?, histogram?)>
<!ELEMENT ptnName (#PCDATA)>
<!ELEMENT histogram (colName, dataType, requestedStepCnt, actualStepCnt, samplingPct?, TuningFact?, statsOutRan?, statsHashLow?, statsHashHigh?, statsSamSt?, statsStepSt?, statsHtSt?, statsPHashSt?, statsHashSt?, statsNoHashSt?, steps*)>
<!ELEMENT colName (#PCDATA)>
<!ELEMENT dataType (#PCDATA)>
<!ELEMENT requestedStepCnt (#PCDATA)>
<!ELEMENT actualStepCnt (#PCDATA)>
<!ELEMENT samplingPct (#PCDATA)>
<!ELEMENT TuningFact (#PCDATA)>
<!ELEMENT statsOutRan (#PCDATA)>
<!ELEMENT statsHashLow (#PCDATA)>
<!ELEMENT statsHashHigh (#PCDATA)>
<!ELEMENT statsSamSt (#PCDATA)>
<!ELEMENT statsStepSt (#PCDATA)>
<!ELEMENT statsHtSt (#PCDATA)>
<!ELEMENT statsPHashSt (#PCDATA)>
<!ELEMENT statsHashSt (#PCDATA)>
<!ELEMENT statsNoHashSt (#PCDATA)>
<!ELEMENT steps (step, weight, equation, value)>
<!ELEMENT step (#PCDATA)>
<!ELEMENT weight (#PCDATA)>
<!ELEMENT equation (#PCDATA)>
<!ELEMENT value (#PCDATA)>
<!ELEMENT noStatsCol (#PCDATA)>
权限 任何用户都可以执行 sp_showoptstats。权限检查不会因细化权限设置而 有所不同。
审计 sysaudits 表的 event 和 extrainfo 列中的值如下所示:
审计的命令或访
事件 审计选项
问权限 extrainfo 中的信息
38 exec_procedure 执行过程 • 角色 – 当前活动角色
• 关键字或选项 – NULL
• 先前值 – NULL
• 当前值 – NULL
• 其它信息 – 所有输入参数
• 代理信息 – set proxy 有效时的初始登录名
另请参见 实用程序 . optdiag
文档 . 请参见 《性能和调优系列:利用统计分析改进性能》中的第 2 章 “统计表和使用 optdiag 显示统计信息”; 《实用程序指南》中的 optdiag 参考页。
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。+-------------------------------------华丽的分割线-------------------------------------------------------------------------