澳门金沙vip 11

sql server 高可用日志传送

一. 日志传送概述

    SQL
Server使用日志传送,可以自动将主服务器的事务日志备份发送到一个或多个辅助数据库上。
可选的监视服务器,记录备份和还原操作的历史记录及状态。

优点
  提供灾难恢复解决方案
  支持对辅助数据库的受限的只读访问权限
  允许用户定义日志发送的延迟时间(如果主数据库上的数据被意外更改,则较长的延迟会很有用)

术语和定义
  备份作业
    主服务器的代理作业,它执行备份操作,将事务日志记录到本地服务器和监视服务器,删除旧的记录。
  复制作业
    主服务器的代理作业,它将备份文件从主服务器复制到辅助服务器上,在辅助服务器和监视服务器上记录。
  还原作业
    辅助服务器的代理作业,备份文件还原到辅助数据库,在本地服务器和监视服务器上记录,删除旧文件。
.
          针对多个辅助服务器时,要重复执行复制作业和还原作业。

SQL
Server的事务日志传送备份是仅次于镜像的高可靠性备份方案,可以达到分钟级的灾难恢复能力。其项目实施成本,又远小于镜像的投入,因此是一种非常实用的备份解决方案。镜像是一种高性能的备份方案,但其局限性在于其镜像服务器只能有一个,当我们考虑多个辅助服务器的时候,镜像就不能满足我们的需求了,这时候日志传送可谓雪中送炭,日志传送也可以结合镜像来组合使用。

二. 准备工作

             同一台服务数据库二个实例 (可以是局域网内的多个服务器)

                            主数据库sqlserver 2012 r2  MSSQLSERVERTWO

                            辅助数据库sqlserver 2012 r2   MSSQLSERVER

         
 澳门金沙vip 1

               演示库  LogShipping_Test,
 主和辅相同的库,相同的表结构和数据。  相同的sql 登录名, 密码

 


   三. 配置日志传送       

--步骤1:设置主服务器恢复模式为完全备份
ALTER DATABASE LogShipping_Test SET RECOVERY FULL

--步骤2:主服务数据库做一次完全备份
BACKUP DATABASE LogShipping_Test TO  DISK='D:\LogShipping\LogShipping_Test.bak' WITH NOFORMAT,INIT

    — 步骤3:

       在主服务器上建立共享目录C:\LogShipping\primary  
具有作业访问权限

       在辅助服务器上建立共享目录C:\LogShipping\secondary
具有作业访问权限

     
 澳门金沙vip 2

     
  澳门金沙vip 3

       
 澳门金沙vip 4

   —步骤4:

         
主服务器LogShipping_Test库–>属性–>任务–>传送事务日志将主服务器和辅助数据库配置成功后,设置复制和还原每隔两分钟做一次传送如下图

       
  澳门金沙vip 5

澳门金沙vip,         日志传送配置成功后:辅助数据库标识为(备用/只读)如下图

     
 澳门金沙vip 6

       

         主数据库SQL Server代理作业如下图:

               备份作业(LSBackup_LogShipping_Test)

                警告作业(LSAlert_{计算机名})

        辅助数据库SQL Server代理作业如下图

                复制作业(LSCopy_{计算机名}_LogShipping_Test)

                还原作业(LSRestore_{计算机名}_LogShipping_Test)

                警告作业(LSAlert_{计算机名}\MSSQLSERVERTWO)

         
 澳门金沙vip 7

         
  澳门金沙vip 8

         主服务器隔2分钟备份的文件共享目录如下图

         
  澳门金沙vip 9

        辅助服务器隔2分钟复制的文件共享目录如下图

       
  澳门金沙vip 10

 

最后:查看日志传送是否正确无误

     利用可视化操作在SQL Server代理作业中查看日志传送是否正常

     通过SQL查询,看日志传送是否运行正常

   --(主数据库查询)
        exec  master..sp_help_log_shipping_monitor  
        exec  master..sp_help_log_shipping_primary_database 'LogShipping_Test'
    --(辅助数据库查询)
        exec  master..sp_help_log_shipping_secondary_database 'LogShipping_Test'

 

第一章  测试背景

SQL SERVER日志传送功能可自动复制数据库的日志文件,并回存到备份服务器 (standby server)
的另外一个数据库。因此可大幅提高SQL
Server数据库的可用性。因为备份数据库完整地接收来源数据库的变化情况,所以它就是一份来源数据库的复本。它们之间的差别仅在于日志复制与加载过程所产生的时间差。然而,当主服务器因故障停机时,您就可以将备份服务器更改为新的主服务器。如果原来的主服务器可重新上线使用,那么您可以将其设定为新的备份服务器 –
事实上就是对调两台服务器的角色。

架构概述

日志传送涉及四项由专用 SQL Server
代理作业处理的作业。这些作业包括备份作业、复制作业、还原作业和警报作业。
备份作业:
在主服务器实例上为每个主数据库创建一个备份作业。它执行备份操作,将历史记录信息记录到本地服务器和监视服务器上,并删除旧的备份文件和历史记录信息。
复制作业:
对每个辅助服务器实例创建复制作业。此作业将备份文件从主服务器复制到辅助服务器,并在辅助服务器和监视服务器中记录历史记录。
还原作业:
在辅助服务器实例上为每个日志传送配置创建一个还原作业。此作业将复制的备份文件还原到辅助数据库。它将历史记录信息记录在本地服务器和监视服务器上,并删除旧文件和旧历史记录信息。
警报作业:
启用警报作业有两种情况,一种是在单独的服务器使用警报作业,一种不使用警报服务器,可分别在主库和辅助库使用警报作业。

澳门金沙vip 11

日志传送

四.  主从数据库手动切换配置

    步骤1:在主数据库,使之处于正在还原

  use master
        Backup log [LogShipping_Test] to disk = 'c:\LogShipping\LogShipping_Test1.bak' with NORECOVERY 

           
–手动运行辅助数据库上的复制和还原作业(快速复制还原到从表)
            –手动将主数据库上的备份和警告作业禁用掉(停止备份)

          步骤2:在辅助数据库上,使用步骤的备件文件还原
  

use master
Restore log [LogShipping_Test] from disk ='c:\LogShipping\LogShipping_Test1.bak' with RECOVERY 

     
 将以前备份和复制所在文件夹的数据删除掉(D:\LogShipping\primary,D:\LogShipping\secondary

     
 重新配置日志传送,在辅助数据库上(LogShipping_Test库–>属性–>任务–>传送事务日志将主服务器和辅助数据库配置成功后)使辅助数据库之变成主数据库
     
 将原来主数据库的日志传送删除(LogShipping_Test库–>属性–>任务–>传送事务日志,将勾选去掉确定).

第二章  测试目的

主要测试SQL SERVER企业版日志自动传送、自动装载功能、主运行服务器与备份服务器的角色切换功能及通过监视服务器对日志传送及备份服务器进行维护。

特点

  • 日志传送具有低成本、高效、简单且能保持业务连续性的特性。
  • 由于日志传送建立在日志基础上,所以“有可能”在发生误操作后恢复到之前的某一时刻。
  • 辅助数据库可以提供间断的数据只读访问。
  • 日志传送也有其不足的地方,就是带宽瓶颈。无论是否在同一个物理位置,网络传输日志的速度都要足够的快。
  • 故障转移时是一个手动过程,需要人工干预使其对外提供服务,并修改应用中的数据库连接到新的地址。

第三章  测试结果评判标准

将SQL SERVER主服务器上数据库的内容自动传送并应用到备份服务器的数据库上。

第四章  测试环境

WINDOWS 2000,512M
Mem,1CPU,局域网,IP:172.17.8.222以下简称222

WINDOWS 2000,512M
Mem,1CPU,局域网,IP:172.17.8.220以下简称220

SQL
SERVER2000企业版

第五章  日志传送和加载的测试过程