传送事务日志

微软sql server2005 standby有两个解决方案,一是数据库镜像,而是传送事务日志。本文主要介绍传送事务日志需要注意的地方。生产环境的数据库原先的备份方式是,每天凌晨一个整备,每隔15分钟一个log备份。

第一步,主数据库上右击 任务 ,传送事务日志


第二步:
勾选将此数据库启用为日志传送配置中的数据库

注意:share为共享文件夹,本例将备份日志放到了辅助服务器上.
第三步:
点击 添加,按下图设置

注:temp1.bak为主数据库的最新完整备份文件,提前已将该备份拷入辅助数据库的share文件夹中.
第四步:
复制文件 必须输入备份所在地址

注:“在以下时间后删除复制的文件”的作业=复制作业,也就是本例中的LSCopy_temp1
第五步:
还原事务日志

注:选无恢复模式后,数据库一直处于还原状态,不能访问,无法验证数据的同步情况。
备用模式的好处就是可以在restore作业不执行的时候,执行select查询;需要注意的是,有查询连接辅助服务器时,restore会报错。所以尽量不要读取辅助数据库。
备用模式是通过产生一个tuf的文件来记录的。每进行一次restore,tuf文件就会recreate一次。
第六步:
作业执行几天后,出错啦!很多时候不是刚设置完成就暴露这个错误。
提示如下:
此备份集中的日志开始于 LSN 22000000007700001,该 LSN 太晚,无法应用到数据库。可以还原包含 LSN 22000000007600001 的较早的日志备份

原因:主数据库每15分钟的log备份和该功能的backup作业交替执行,乱了手脚。解决办法,主数据库的15分钟log备份是要不得了。这点似乎和oracle的redo、archive差远了。主数据的全备还是没问题的,可以继续保留而且全备很关键。

总结:
传送事务日志的原理
备份主数据库的log,将该log备份restore至辅助数据库,辅助数据库应为还原状态或者备用/只读模式。用T-sql表述如下:

 

 1 restore   database  temp1
 2 from   disk = ' E:\Share\temp1bak '
 3 with  move  ' temp1 ' to   ' G:\data\temp1.mdf ' ,
 4 move ' Part1 ' to   ' G:\data\temp1_1.ndf ' ,
 5 move ' Part2 ' to   ' G:\data\temp1_2.ndf ' ,
 6 move ' Part3 ' to   ' G:\data\temp1_3.ndf ' ,
 7 move ' trans_log ' to   ' G:\data\temp1_4.ndf ' ,
 8 move ' temp1_log ' to   ' H:\Log\temp1_5.ldf ' ,STANDBY = ' E:\UNDO\ROLLBACK_UNDO_temp1.BAK ' , replace ;
 9
10
11
12
13 restore   log  temp1
14 from   disk = ' F:\Share\temp1_backup_200807160115.trn '
15 with  move  ' temp1 ' to   ' G:\data\temp1.mdf ' ,
16 move ' Part1 ' to   ' G:\data\temp1_1.ndf ' ,
17 move ' Part2 ' to   ' G:\data\temp1_2.ndf ' ,
18 move ' Part3 ' to   ' G:\data\temp1_3.ndf ' ,
19 move ' trans_log ' to   ' G:\data\temp1_4.ndf ' ,
20 move ' temp1_log ' to   ' H:\Log\temp1_5.ldf ' ,STANDBY = ' E:\UNDO\ROLLBACK_UNDO_temp1.BAK ' ;

PS:正在还原状态的数据库无法drop,可执行

restore   database  temp1
go
drop   database  temp1

备用/只读状态的辅助数据库,复制中带了主数据库的发布。drop辅助数据库时提示数据库正应用于发布,无法删除。可执行

1 alter   database  temp1 
2 set  OFFLINE
3 go
4 drop   database  temp1
5 go

 

PS:如果是多台standby,那么首先停掉主上的日常log备份,再执行晚上的全备作业。将备份拷贝到多台辅助数据库机器上,使用上述代码恢复数据库的全备份至standby状态。配制主数据库,选择否,辅助数据库已经初始化。将主的备份放到主数据库的机器上,使用辅助数据库上的copy作业将主数据库上的备份拷贝到辅助数据库的机器上。
 

转载于:https://www.cnblogs.com/shined/archive/2008/07/16/1244537.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值