随着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
- 安全性管理指南
- 实用程序指南
迁移后过程
迁移后恢复数据库中的复制信息。这些步骤可由 repl 报告生成。
如果在源服务器和目标服务器之间更改了页大小,还必须按照 第 352 页 的 “逻辑页大小更改时修改系统表”中的说明进行操作。
Replication Server 按 server_name.database_name 标识所有连接。迁移后 必须将目标服务器 (要迁移到的服务器)的名称更改为源服务器 (要 迁移的服务器)的名称。
对所有主数据库,包括 RSSD (如果它是主数据库)执行此步骤。 如果在迁移期间更改了页大小,还必须变更 rs_lastcommit 和 rs_threads
系统表 (如 第 352 页的 “逻辑页大小更改时修改系统表”中所述)。
❖ 恢复主数据库
1 如果原来的主数据库启用了热备份,则恢复备份状态。输入:
sp_reptostandby database_name, status
备份状态由 sybmigrate 保存在源数据库的迁移日志中。
2 将生成 ID 增加 1。输入:
dbcc settrunc ("ltm", "gen_id", gen_id)
可在源数据库的迁移日志中查看当前的生成 ID。 3 重新设置辅助截断点:
dbcc settrunc ("ltm", "valid")
4 将此数据库的 Replication Server 定位符值设为零。输入:
rs_zeroltm server, database_name
5 如果此数据库为热备份配置中的活动连接,可通过转储主数据库并 将转储装载到备份来重新实现备份数据库。有关指导,请参见 Replication Server 文档。
6 在主数据库上启动 RepAgent。输入:
sp_start_rep_agent database_name
7 登录到 Replication Server 并重新启动日志传送:
resume log transfer from server.database
如果在迁移期间没有更改页大小,则不必在迁移后执行复制数据库的步 骤。
如果更改了页大小,请按照 第 352 页的 “逻辑页大小更改时修改系统 表”中的步骤操作。
恢复 RSSD
以下是恢复 RSSD 的步骤。
❖ 恢复 RSSD
1 如果 RSSD 是主数据库,请按照 第 351 页的 “恢复主数据库” 中的 步骤操作。
如果更改了页大小,请确保按说明变更了 rs_lastcommit 和 rs_threads
系统表。
2 退出 Repliction Server 休眠模式。登录到 Replication Server 并输入:
sysadmin hiberate_off replication_server
如果在迁移期间逻辑页大小发生更改,则必须将 rs_lastcommit 和
rs_threads 系统表变更为更改帐户。
对所有 已更改页大小的数据库执行此步骤。
❖ 变更 rs_lastcommit 和 rs_threads 系统表
1 变更 rs_lastcommit 表。输入:
declare @pad8_size integer declare @alter_cmd varchar(200)
select @pad8_size = (@@maxpagesize / 2)
- (select sum(A.length) from syscolumns A, sysobjects B
where A.id = B.id
and B.name = 'rs_lastcommit')
+ (select A.length from syscolumns A, sysobjects B where A.id = B.id
and B.name = 'rs_lastcommit' and A.name = 'pad8')
select @alter_cmd = "alter table rs_lastcommit "
+ "modify pad8 char("
+ convert(varchar(100), @pad8_size)
+ ")"
execute (@alter_cmd) go
2 变更 rs_threads 表。输入:
declare @pad4_size integer declare @alter_cmd varchar(200)
select @pad4_size = (@@maxpagesize / 2)
- (select sum(A.length) from syscolumns A, sysobjects B where A.id = B.id
and B.name = 'rs_threads')
+ (select A.length from syscolumns A, sysobjects B where A.id = B.id
and B.name = 'rs_threads' and A.name = 'pad4')
select @alter_cmd = "alter table rs_threads "
+ "modify pad4 char("
+ convert(varchar(100), @pad4_size)
+ ")"
execute (@alter_cmd) go
日志
在迁移工具日志中,在与已复制的对象有关的信息之前会出现以下旗标:
=== Replication Information for Database 'pdb1' ===
以下是名为 pdb1 的主数据库的日志文件示例:
sp_repostandby 'pdb1' is NONE.
如果数据库的备份状态不是 NONE,则使用上文迁移后的步骤中所述的 备份状态。
sp_config_rep_agent 'pdb1'
sp_config_rep_agent 需要当前的 RepAgent 配置。迁移工具自动恢复
RepAgent 配置,也可使用此日志检查 RepAgent 配置。
Parameter name |
Default |
Config Value |
Run value |
priority |
5 |
5 |
5 |
fade timeout |
30 |
30 |
30 |
scan timeout |
15 |
15 |
15 |
retry timeout |
60 |
60 |
60 |
rs username |
n/a |
rs1_user |
rs1_user |
trace flags |
0 |
8194 |
8194 |
batch ltl |
true |
true |
true |
rs servername |
n/a |
rs1 |
rs1 |
send buffer size |
2k |
2k |
2k |
trace log file |
n/a |
n/a |
n/a |
connect database |
n/a |
pdb1 |
pdb1 |
connect dataserver |
n/a |
pds1 |
pds1 |
can batch size |
1000 |
1000 |
1000 |
security mechanism |
n/a |
n/a |
n/a |
msg integrity |
false |
false |
false |
unified login |
false |
false |
falses |
kip ltl errors |
false |
false |
false |
msg origin check |
false |
false |
false |
short ltl keywords |
false |
false |
false |
msg confidentiality |
false |
false |
false |
data limits filter mode |
stop |
stop |
stop |
msg replay detection |
false |
false |
false |
mutual authentication |
false |
false |
false |
send structured oqids |
false |
false |
false |
send warm standby xacts |
false |
false |
false |
msg out-of-sequence check |
false |
false |
false |
skip unsupported features |
false |
false |
false |
send maint xacts to replicate |
false |
false |
false |
(28 rows affected) |
以上是显式复制的表的列表。 sybmigrate 自动恢复显式复制表的复制状 态,您可以使用日志的这部分内容查看显式复制表的复制状态。
sp_setreptable
Name Repdef Mode
------------------------------ ----------
t1 owner_off
t2 owner_on
(2 rows affected)
dbcc gettrunc
以下是显式复制的存储过程的列表。迁移工具自动恢复显式复制的存储 过程的复制状态,您可使用日志的这部分内容检验显式复制的存储过程 的复制状态。
sp_setrepproc
Name Type Log Mode
----------------------- ------------- -----------
p1 function log_sproc
p2 function log_current
p3 table log_sproc
p4 table log_current (4 rows affected)
以下是关于辅助截断页的信息。在执行迁移后步骤期间,将需要
generation_id 列。
secondary_trunc_page secondary_trunc_state dbrepstat generation_id database_id database_name ltl_version
---------------------------------------------------------- 621 1 167 0
6 pdb1 400
(1 row affected)
This appears to be a replicated primary database.
Make sure the post processing steps for a replicated primary database are performed.Please consult the manuals for
the steps that need to be performed.
如果数据库是复制数据库,以下则是日志条目示例。
This appears to be a replicate database.
If the pagesize is greater than 2K, make sure the post processing steps for a replicate database are performed.Please consult the manuals for the steps that need to be performed.
以下是 RSSD 数据库的日志条目示例。
This appears to be a replication system database
Make sure the post processing steps for a replication system database are performed.Please consult the manuals for
the steps that need to be performed
因为数据库可列出三种类别,所以对于数据库来说这三个日志都可出现。
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。+-------------------------------------华丽的分割线-------------------------------------------------------------------------