手把手教你配置SQLServer2008高可用性解决方案

  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中。

 

posted on 2012-05-02 10:58  sharpwang  阅读(1596)  评论(0编辑  收藏  举报