SAPSYBASEASE数据库备份还原手册.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《SAPSYBASEASE数据库备份还原手册.docx》由会员分享,可在线阅读,更多相关《SAPSYBASEASE数据库备份还原手册.docx(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、SAP ASE数据库备份还原手册SAP ASE数据库备份还原手册版本:v 0.1编辑:CNSAP.cn审核:日期:2015年6月19日目录一、制定备份和恢复计划41.关于数据库事物42.指定备份的职责43.安排例行备份44.在其它时间备份数据库55.安排 master 的备份56.截断 master 数据库事务日志57.保存脚本和系统表58.配置 Adaptive Server 以用于同时装载6二、备份数据库71.指定数据库名的规则72.压缩转储73.装载压缩转储84.设备出现故障后复制日志95.截断日志9三、恢复数据库101.获取事务日志的当前转储102.检查空间使用情况103.删除数据库1
2、14.重新创建数据库115.装载数据库116.装载事务日志117.装载事务日志到某个时间点118.使数据库处于联机状态12四、恢复系统数据库131.恢复过程总结132.恢复 master 数据库143.建立新的主设备144.在主恢复方式下启动 Adaptive Server155.重新创建 master 的设备分配156.检查 Backup Server sysservers 信息167.检验 Backup Server 是否在运行168.更新 number of devices 配置参数169.在主恢复方式下重新启动 Adaptive Server1710.检查系统表以检验 master 的
3、当前备份1711.重新启动 Adaptive Server1712.恢复服务器用户 ID1713.检查 Adaptive Server1814.使用 disk reinit 恢复 sysdevices18五、DUMP命令详解191.dump database192.dump transaction24六、LOAD命令详解311.load database312.load transaction35七、备份还原示例391.dump database392.dump transaction413.load database424.load transaction43一、 制定备份和恢复计划Adap
4、tive Server 具有自动恢复过程,可以使用户避免由于断电和计算机故障所造成的损失。若要避免介质故障带来损失,请定期经常对数据库进行备份。1. 关于数据库事物Adaptive Server 使用事务来跟踪数据库的所有变化。事务是 Adaptive Server 的工作单元。一个事务包括一个或多个作为一个单元成功或失败的 Transact-SQL 语句。 每条修改数据的 SQL 语句都被视为一个事务。通过将一系列语句放在 begin transaction.end transaction 块中,用户也可以定义事务。 每个数据库都拥有自己的事务日志,即系统表 syslogs 。事务日志自动记
5、录每个数据库用户发出的每个事务。不能关闭事务记录。 事务日志是前写式日志。当用户发出要修改数据库的语句时, Adaptive Server 将这些更改写入日志中。在这条语句要做的所有更改都已记录在日志中后,这些更改将被写入到数据页的高速缓存副本中。此数据页将一直保留在高速缓存中,直到另一数据库页需要内存为止。那时,已更改的数据页才写入磁盘中。 如果事务中任何语句未能完成执行, Adaptive Server 将撤消由该事务所引起的所有更改。 Adaptive Server 在每个事务结束时将一条“end transaction”记录写入日志,记录该事务的状态 (成功或失败)。2. 指定备份的职
6、责许多组织都有一位执行所有备份和恢复操作的操作员。只有系统管理员、数据库所有者或操作员才可以执行 dump 和 load 命令。数据库所有者只能转储自己的数据库。操作员和系统管理员可以转储和装载任何数据库。3. 安排例行备份开发备份计划中的主要任务是确定备份数据库的频率。备份频率决定在介质出现故障时丢失的工作量。创建每个用户数据库之后立即转储它以提供基点,并且以后按固定的时间表进行。推荐至少要每天备份事务日志,每周备份数据库。 许多拥有大型、活动数据库的安装每天转储数据库,并且每半个小时或每小时进行一次事务日志转储。 在没有跨数据库数据修改活动期间,应同时备份互依数据库 (其中存在跨数据库事务
7、、触发器或参照完整性的数据库)。如果其中一个数据库失败并且需要重新装载,则从所有这些同时转储中重新装载它们。4. 在其它时间备份数据库除了定期转储以外,每次升级用户数据库、创建新索引、执行未记录的操作或者运行 dump transaction with no_log 或 dump transaction with truncate_only 命令时,也都要转储数据库。将用户数据库升级到当前版本的 Adaptive Server 后,转储最近升级的数据库,以便创建与当前版本兼容的转储。 dump database 必须在允许执行 dump transaction 之前、在已升级的用户数据库上进行
8、。向表中添加索引时,将在事务日志中记录 create index 。而在向索引页填充信息时, Adaptive Server 却不记录这些更改。如果在您创建完索引后数据库设备出现故障,则使用 load transaction 命令重建索引所用时间可能与使用 create index 命令建立索引所用时间一样多。为避免长时间的延迟,需在数据库的一个表上创建索引后立即转储每个数据库。dump transaction with truncate_only 和 dump transaction with no_log 将从日志中删除事务而不进行备份。为确保可恢复性,请在每次由于磁盘空间不足而运行任一命
9、令时转储数据库。这样做之后,才能复制事务日志。5. 安排 master 的备份master 数据库备份用作恢复过程的一部分,以防出现影响 master 数据库的故障。如果没有 master 数据库的当前备份,则可能在需要用户数据库并再次运行它时不得不重建重要的系统表。在执行影响磁盘、存储、数据库或段的每个命令后,都备份 master 数据库。始终在发出以下任何命令或系统过程后备份 master 数据库: disk init 、 sp_addumpdevice 或 sp_dropdevice 磁盘镜像命令 段系统过程 sp_addsegment 、 sp_dropsegment 或sp_exte
10、ndsegment create procedure 或 drop procedure sp_logdevice sp_configure create database 或 alter database6. 截断 master 数据库事务日志 因为 master 数据库事务日志与数据存储在相同数据库设备上,所以不能单独备份其事务日志。不能移动 master 数据库的日志。必须经常使用 dump database 备份 master 数据库。定期使用具有truncate_only 选项的 dump transaction (例如,每次数据库转储后)清除 master 数据库的事务日志。7. 保
11、存脚本和系统表 为进一步进行保护,保存包含所有 disk init 、 create database 和 alter database 命令的脚本,并在每次发出这些命令之一后为sysdatabases 、 sysusages 和 sysdevices 表生成书面副本。 您无法使用 dataserver 命令自动恢复这些命令导致的更改。如果您保留脚本 (包含 Transact-SQL 语句的文件),则可以运行它们以重新创建这些更改。或者,您必须针对重新构建的 master 数据库重新发出每个命令。 保留 syslogins 的书面副本。从转储中恢复 master 时,将表的书面副本与当前版本进
12、行比较,以确保用户保持相同的用户 ID。8. 配置 Adaptive Server 以用于同时装载Adaptive Server 可以同时执行多个 load 和 dump 命令。装载数据库要求有一个 16K 缓冲区来用于每个活动数据库装载。缺省情况下, Adaptive Server 被配置为可同时进行六个装载。要同时执行多项装 载,系统管理员可以增加大型 I/O 缓冲区的数量: sp_configure number of large i/o buffers, 12 此参数要求您重新启动 Adaptive Server。这些缓冲区不用于 dump 命令或 load transaction 命
13、令。二、 备份数据库经常定期备份是防止由于数据库设备出现故障而损坏数据库的唯一方法。dump database 、 dump transaction 、 load database 和 load transaction 命令具有相似的语法。例行转储和装载要求数据库名和至少一个转储设备。这些命令还可包括下列选项: compression= ,用于将转储文件压缩为本地文件 at server_name ,用于指定远程 Backup Server density 、 blocksize 和 capacity ,用于指定磁带存储特性 dumpvolume ,用于指定 ANSI 磁带标签的卷名 file
14、 = file_name ,用于指定要转储到的或要从其装载的文件的名称 stripe on stripe_device ,用于指定其它转储设备 dismount 、 unload 、 init 和 retaindays ,用于指定磁带的处理操作 notify ,用于指定是将 Backup Server 消息发送到启动转储或装载的 client ,还是发送到 operator_console如果设备上的可用空间不足,无法成功发出 dump transaction 或dump transaction with truncate_only 命令,请使用 dump transaction with n
15、o_log 。1. 指定数据库名的规则 可以将数据库名以文字、局部变量或参数的形式指定给某一存储过程。 如果从转储中装载数据库: 此数据库必须存在。可以使用 create database 的 for load 选项创建一个数据库,或通过装载覆盖一个现有数据库。装载数据库始终会覆盖现有数据库中的所有信息。 使用的数据库名不必与所转储的数据库的名称相同。例如,您可以转储 pubs2 数据库,创建另一个名为 pubs2_archive 的数据库,然后将转储装载到新数据库中。2. 压缩转储 dump 命令包括两个选项,利用这两个选项,您可以使用 Backup Server 压缩数据库和事务日志,从而
16、减少已存档数据库的空间要求。 参数为: compression = compression_level 压缩至远程服务器。导致Backup Server 使用其自己的本机压缩方法。Sybase 建议使用此压缩选项。 compress:compression_level: 压缩至本地文件。导致 Backup Server 调用外部过滤器,支持此选项是为了向后兼容。 compression_level 可以是 0 到 9 之间的某个数字,也可以是 100 或101。对于一位数的压缩级别,0 表示不压缩,9 表示压缩级别最高。 压缩级别 100 和 101 表示压缩比较速、高效,其中压缩级别 100
17、 表示压缩速度较快,101 表示压缩性能较好。利用 dump 命令的 compression= 参数,可以减少已存档数据库的空间要求。使用 Adaptive Server 12.5.2 及更高版本,可以通过 compression= 参数将转储压缩到远程计算机。 如果使用旧的 compress: 选项,装载数据库转储时不需要包括压缩级别。但是,可以发出 load with listonly=full 命令以确定进行转储的压缩级别。 如果您使用本机 compression= 选项,则当装载数据库转储时,不需要包括 compression= 选项。 例如,若要将 pubs2 数据库转储到文件“co
18、mpress_file”中,请输入: dump database pubs2 to compress_pression=100SAP建议您根据性能要求选择一组压缩级别。对于占用 CPU 时间不太多的压缩,请使用压缩级别 100 并根据存档空间要求切换至级别 101。对于常规压,请使用压缩级别 6,然后根据性能要求增高或降低级别。3. 装载压缩转储如果使用 dump . compress: 来转储数据库或事务日志,则必须使用load . compress: 选项来装载该转储。 load database . compress: 和 load transaction . compress: 的部分
19、语法为: load database database_name from compress:stripe_device .stripe on compress:stripe_device. load transaction database_name from compress:stripe_device .stripe on compress:stripe_device. 语法中的 database_name 表示您存档的数据库, compress: 调用已存档数据库或事务日志的解压缩。archive_name 是您要装载的已存档数据库或事务日志的完整路径。如果创建转储文件时未包括完整路径
20、, 则 Adaptive Server 将在启动 Adaptive Server 的目录中创建转储件。 如果使用 compress: 选项,则对于每个转储设备,它必须是 stripe on 子句的一部分。如果您使用compression= 选项,则在设备列表之后使用它一次。4. 设备出现故障后复制日志通常, dump transaction 在复制日志后截断日志的不活动部分。使用with no_truncate 可以在不截断日志的情况下复制日志。5. 截断日志在事务日志非常满时,您可能无法使用常规方法来转储它。如果使用了 dump transaction 或 dump transaction
21、with truncate_only ,并且该命令由于日志空间不足而失败,请使用 dump transaction 的 with no_log 选项: dump transaction database_name with no_log 此选项截断日志,而不记录转储事务事件。因为此选项不复制任何数据,所以它只要求数据库的名称。警告:with truncate_only 和 with no_log 允许您截断可用空间极其不足的日志。这两个选项都无法恢复自上次例行转储后已提交的事务。三、 恢复数据库介质出现故障时的状况因故障原因的不同而异。如果磁盘上仅有一个块损坏,那么,除非您经常运行 dbcc
22、命令,否则,在损坏发生后, 数据库看上去会正常运行一段时间。如果整个磁盘或磁盘控制器损坏。Adaptive Server 将该数据库标记为可疑数据库并显警告消息。如果存储 master 数据库的磁盘出现故障,则用户将无法登录到服务器, 已登录的用户将无法执行需要访问 master 中的系统表的任何操作。当数据库设备出现故障时,SAP 会建议您执行下列步骤: 1 获取设备上每个数据库的当前日志转储。 2 检查设备上每个数据库 的空间使用情况。 3 在为设备上的所有数据库收集了这些信息之后,删除每个数据库。 4 使用 sp_dropdevice 删除有故障的设备。 5 使用 disk init 初
23、始化新数据库设备。 6 重新创建数据库,一次创建一个。 7 将最新的数据库转储装载到每个数据库中。 8 按各个事务日志转储的创建顺序应用这些转储。1. 获取事务日志的当前转储使用 dump transaction with no_truncate 为出故障设备上的每一数据库获取当前事务日志转储。例如,若要获取 mydb 的当前事务日志转储, 请输入: dump transaction mydb to /dev/nrmt0 at REMOTE_BKP_SERVER with init, no_truncate, notify = operator_console2. 检查空间使用情况检查和记录所
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SAPSYBASEASE 数据库 备份 还原 手册
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内