一:简介

日志传送将事务日志不间断地从一个数据库(主数据库)发送到另一个数据库(辅助数据库)。不间断地备份主数据库中的事务日志,然后将它们复制并还原到辅助数据库,这将使辅助数据库与主数据库基本保持同步。目标服务器充当备份服务器,并可以将查询处理从主服务器重新分配到一个或多个只读的辅助服务器。日志传送可与使用完整或大容量日志恢复模式的数据库一起使用。

 

二:日志传送操作

日志传送由三项操作组成:

  1. 在主服务器实例中备份事务日志。
  2. 将事务日志文件复制到辅助服务器实例。
  3. 在辅助服务器实例中还原日志备份。

日志可传送到多个辅助服务器实例。在这些情况下,将针对每个辅助服务器实例重复执行操作 2 和操作 3。日志传送配置不会自动从主服务器故障转移到辅助服务器。如果主数据库变为不可用,可手动使任意辅助数据库联机。

 

三:日志传输架构

 

sql server高可用集群搭建 sqlserver2008高可用_服务器

1.主服务器

作为生产服务器的SQL Server数据库引擎实例。主数据库必须使用完整恢复模式或大容量日志恢复模式,将数据库切换为简单恢复模式会导致日志传送停止工作。

2.辅助服务器

保留主数据库备用副本的服务器。一台辅助服务器可以包含多台不同主服务器中数据库的备份副本。辅助数据库必须通过还原主数据库的完整备份的方法进行初始化。还原时可以使用 NORECOVERY 或 STANDBY 选项。

3.监视服务器


监视服务器是可选的,它可以跟踪日志传送的所有细节,包括:

  • 主数据库中事务日志最近一次备份的时间。
  • 辅助服务器最近一次复制和还原备份文件的时间。
  • 有关任何备份失败警报的信息。

4. 上图所阐释的备份作业、复制作业以及还原作业所执行步骤,如下所示:

  • 主服务器实例执行备份作业以在主数据库上备份事务日志。然后,该服务器实例将日志备份放入主日志备份文件(此文件将被发送到备份文件夹中)。在此图中,备份文件夹位于共享目录(“备份共享”)下。
  • 全部三个辅助服务器实例都执行其各自的复制作业,以将主日志备份文件复制到它本地的目标文件夹中。
  • 每个辅助服务器实例都执行其还原作业,以将日志备份从本地目标文件夹还原到本地辅助数据库中。

5. 四个日志传送作业

  • 备份作业
  • 复制作业
  • 还原作业
  • 警报作业

 

四:应用实例

下面简单介绍一下日志传输的设置步骤:

1. 主服务器设置

(1) 启用Log Shipping Configuration

右键单击需要配置日志传输的数据库—>Tasks—> Ship Transaction Logs...—>Enable this as a primary database in a log shipping configuration打钩

sql server高可用集群搭建 sqlserver2008高可用_服务器_02

(2) 点击Backup Setting

sql server高可用集群搭建 sqlserver2008高可用_数据库_03

  • 建立backup的文件夹,Network path和local path
  • 删除多长时间之前的日志文件
  • 警告,多长时间没有日志备份发出警告
  • Backup Job Schedule,设置详细的备份时间和周日
  • 压缩选择,一般选择Compress Backup,可以减少网络的IO

 

2. 辅助服务器设置

(1) 在Secondary databases, 点击Add

sql server高可用集群搭建 sqlserver2008高可用_主数据_04

(2) 连接到辅助服务器

sql server高可用集群搭建 sqlserver2008高可用_主数据_05

有三个选项卡:

  • Initialize Secondary Database,用主数据库的full backup初始化辅助服务器。
  • Copy Files,在主服务器日志文件备份的位置。
  • Restore Transaction Log,恢复事务日志选项。

注:可以添加多个辅助服务器。

(3) 警告服务器设置(可选)

sql server高可用集群搭建 sqlserver2008高可用_数据库_06

 

以上只是简单的介绍日志传输的设置。

 

五:总结

使用日志传输模式,一份数据拷贝可以被还原到多个不用的辅助数据库上。一旦主数据库发生故障,可通过还原事务日志到任意辅助数据库联机,或者恢复事务日志到指定的时间点(不支持自动故障转移)。