zoukankan      html  css  js  c++  java
  • LogShipping Failover step by step

    LogShipping是MS SQL Server高可用性解决方案中比较容易实现的一种,其优劣程度及具体的配置步骤,相信大家都已经很熟悉了,所以不再赘述。我们知道,LogShipping只能使用手工方式实现故障转移,所以往往都有这种感觉:实现主从切换要比前期配置Logshipping更难。今天我结合常见的两个场景,整理了下实现主从切换的详细步骤。

    背景:

    为了方便截图,我将Primary server及Secondary设定为在同一个instance上,也就是说LogShipping跟LogShipping_secondary是在同一instance上的两个数据库,我们已经为primary数据库LogShipping配置了日志传送,且LogShipping_secondary是secondary数据库。但是为了方便区分主从,我还是使用 Primary server 及Secondary server来代指这两个数据库。

    截图:

    场景一,Primary 数据库依然可访问,只是需要切换至Secondary数据库。

     

    Step1,在Primary server的master数据库中打开一个新的查询窗口,运行下面的sql语句以完成对LogShipping的日志备份且with NORECOVERY。

    Backup log LogShipping to disk = 'E:\backup\LogShippingLog.bak' with NORECOVERY 

    截图:

     

    Step2, 手动运行Secondary server上的复制文件agent及还原agent,以完成从备份共享文件夹的文件复制及在Secondary server上的还原。

    截图:

    Step3, 将警报agent、Primary server上的备份agent、Secondary server上的复制文件agent及还原agent都禁用掉。

    截图:

    Step4,在Secondary server上使用step1中创建的日志备份还原LogShipping_secondary数据库,且with RECOVERY。

    Restore log LogShipping_secondary  from disk ='E:\backup\LogShippingLog.bak' with RECOVERY 

    截图:

     

    Step5, 重新配置现在的Primary server(原Secondary server)对应的Logshipping选项,还是用以前的配置即可,只是将原来的Primary server 设定成了现在的Secondary server(standby mode)。

     截图:

    Step6,启用当前Primary server(原Secondary server)上的备份agent,启用当前Secondary server(原Primary server)上的复制文件agent及还原agent。

    场景二,Primary 数据库遇到了灾难,已不可正常访问,需要迅速转移至Secondary数据库。

    截图:

     

    Step1, 手动运行Secondary server上的复制文件agent及还原agent,以完成从备份共享文件夹的文件复制及在Secondary server上的还原。

    截图:

    Step2, 将警报agent、Primary server上的备份agent、Secondary server上的复制文件agent及还原agent都禁用掉。

    截图:

    Step3, 在Secondary server的master数据库中打开一个新的查询窗口,运行下面的sql语句以完成对LogShipping_secondary的还原,且with RECOVERY。实际上也就是将LogShipping_secondary数据库从read-only状态改成online状态。

    Restore database  LogShipping_standby with Recovery 

    Step4, 重新配置现在的Primary server(原Secondary server)对应的Logshipping选项,还是用以前的配置即可。如果原Primary server还继续可用,只需将原来的Primary server设定成了现在的Secondary server(standby mode),并使用现在的LogShipping_secondary数据库还原出来一个新的LogShipping数据库。

    注意:在SQL Server 2008 版本中无需再使用DTS/SSIS包或者bcp去同步两个db之间的logins及users了,因为在每次的还原剂备份中都会自动将Primary server上的login及users同步至Secondary server中。

     

  • 相关阅读:
    JavaScrip(二)JavaScrip语法基础
    JavaScrip(一)JavaScrip的写法
    MySQL远程登陆
    JavaScript简介
    Fedora防火墙配置
    sqlalchem表关联(一对多,一对一,多对多)
    常见的SQLALCHEMY列类型
    flask使用配置文件
    算法(一)概述
    pom
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2479536.html
Copyright © 2011-2022 走看看