《SQLServer 事务日志传送.docx》由会员分享,可在线阅读,更多相关《SQLServer 事务日志传送.docx(5页珍藏版)》请在三一办公上搜索。
1、SQLServer事务日志传送事务日志传送概述SQL Server的事务日志传送备份是仅次于镜像的高可靠性备份方案,可以达到分钟级的灾难恢 复能力。其项目实施成本,又远小于镜像的投入,因此是一种非常实用的备份解决方案。前文介 绍过SQLServer镜像功能完全实现,镜像是一种高性能的备份方案,但其局限性在于镜像的辅 助服务器也就是镜像服务器只能 有一个,当我们考虑过个目标服务器的时候,镜像就满足不了 我们的需求了,这时候日志传送可谓雪中送炭,日志传送也可以结合镜像来组合使用。在选择镜像还是日志传送的时候我们应考虑:需要多少个目标服务器?如果只需要一个目标数据库,建议使用数据库镜像解决方案。如果
2、需要多个目标数据库,则需要使用日志传送(可以单独使用,也可以与数据库镜像一起使用)。 如果将这两种方法组合使用,就既能享有数据库镜像的好处,又能获得日志传送提供的多个目标 数据库的支持。如果需要延迟还原目标数据库的日志(通常是为了防止逻辑错误),请使用日志传送(可以单独 使用,也可以与数据库镜像一起使用)。日志传送还可以和数据库复制一起使用。故在事务日志传送中提供了 No recovery mode和Standby mode,两者的介绍如下:1. 无恢复模式(No recovery mode):既不前滚也不回滚未提交的事务,数据不可读。2. 备用模式(Standby mode):在恢复日志期间
3、回滚所有未提交的事务,并且将所有未 提交的事务保存为一个单独的Transaction Undo File(TUF)文件,恢复过程通过该文件来维护 事务的完整性,当恢复下一个事物的时候则恢复所有已提交的事务。Standby mode中的复选 框勾选则当日志恢复的时候,断开所有用户的连接,如果有一个用户没有断开,则还原无法进行。事务日志传送实现其实操作比较简单,但是会遇到稀奇古怪的问题。在这里也把问题总结下。首先需要两个用来做日志传送的数据库。叫做主数据库和辅助数据库。当然还可以配置监视数据 库。主数据库 IP: 192.168.0.2辅助数据库IP:192.168.0.3下面通过简单的几步就可以
4、实现1,建立共享文件夹以及复制文件夹建立好需要传送日志的数据库,并在辅助服务器上建一个共享文件夹叫做PrimaryData,用来 传送备份文件。设置好权限。保证主服务器可以访问,或者直接设置Everyone都可访问。这里设置不当会出现以下错误无法打开备份设备l192.168.0.3PrimaryDatatest.bakl。出现操作系统错误53(找不到网络路径。)。解决方法.设置共享文件exec master.xp_cmdshell net use 192.168.0.3PrimaryData 密码 /user:用户名至于句话的意思大家可以去查下咯.执行成功后就可以将数据库备份到网络路径上了。报
5、错为:1系统发生1312错误3指定的登陆会话不存在。可能已被终止解决方法.exec master.xp_cmdshell net use 192.168.0.3PrimaryData 密码/user: 192.168.10.3administrator2, 执行完全备份USE master;ALTER DATABASE test SET RECOVERY FULL;GOBACKUP DATABASE testTO DISK = 192.168.0.3PrimaryDatatest.bakWITH FORMAT;GO如果上面一句话执行成功的话,这个应该没问题。之后的步骤就简单了。3, 开始执行日
6、志传送访问192.168.0.3PrimaryData可以看到刚才备份的文件。然后在数据库上右键-属性-事务日志传送 设置备份文件夹,这里我都备份到了辅助服务器上。确定之后点击添加服务器,设置要连接的数据库。辅助教据屋E):tEst送择现有数据定,或输入名称新强一个敦据库4初始化辅助数据库具制改件廷原事务日志必须苜先将主教据库昭整背伤逆原削解助教据库中,辅助数据库K能作为目志传送目标。是芝希望Manasemnt Studi o将备傍还原到辅助瀚据窟中?。翻瑟主数据库眼蹈份”:并将它活原到辅助数据库中如果辖助数据库不存在,则创与原选项史)是,将主数据库的现有备僧还原到辅助数据库中.欢蹶辅助数据库
7、不存在,则创建它)::指定指向辅助服务暑实例可访问的番份划牛的网络路径。备份文件溟):迁原迭项.M,.辅助数据库已初始化以女设置复制文件的位置,这里最好在辅助服务器上。可以很快访问到,省去了网络带来的延迟。这里的两种模式上文都有介绍,大家可以根据需要来选择。匚皿合化浦助数据库复制画五原事务曰志在浦助服务器实例上运行的SQL 5空代理作业将文件及目标文件夹还原出来。还原备份时的数据库状态:争无恢复模式.皿带用模式)在还原备付时断开数据库中用尸的连接r叫0分钟,45到此,主服务器上的配置就完成了。4, 辅助服务器上查看记录如果以上步骤没问题的话,我们可以在辅助服务器上的PrimaryData目录下
8、看到trn后缀的文 件。可以在代理下查看作业执行的历史记录。如果你选择的是备用模式。我通过查看历史记录遇到了一个问题是“因为数据库正在使用,所以无法获得对数据库的独占访问权“网上有介绍说用sql语句来杀掉进程,不过这种方式不是长久之计。可以通过配置数据库的属性, 在数据库属性的【选项】选项卡中,设置【限制访问】参数为“Single即可。使用无恢复模式不会出现这样的问题。5, 故障恢复将主服务器上的日志传送停止,然后将最后的备份文件复制到辅助服务器上执行以下语句RESTORE LOG FROM DISK =d:PrimaryDataDatabase_name.trn WITH RECOVERY如果无法访问活动事务日志,那么可以使用下面的命令来恢复数据库。RESTORE DATABASE WITH RECOVERY;下篇详细讲故障恢复。