BosonZhang's Blog



    不积跬步,无以至千里;不积小流,无以成江海。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

SQL Server 2008镜像小结

Posted on 2010-12-03 17:05  qdzhbsh  阅读(2464)  评论(1编辑  收藏  举报

     SQL Server 2008镜像的运行模式有3种:1.高性能(异步)2.不带自动故转移功能障的高安全(同步)3.带自动故转移功能障的高安全(同步)。前段时间,为某区市的两台监察数据库做了镜像,模式为高性能(异步),不使用见证服务器。现将步骤总结如下:

1.场景为主体服务器和镜像服务器都没有加入域,在工作组中。

2.主体服务器和镜像服务器上的SQL主服务账户都指定为.\Administrator,并且密码一致。

3.主体服务器和镜像服务器上都在防火墙上设置例外“sqlmirror-5022”,打开TCP5022端口。

4.主体服务器上的准备镜像的数据库LS_SUPERVISIONDB恢复模式必须指定为完整。

5.在主体服务器上不仅要备份数据库文件,还要备份事务日志文件(必须指定为截断选项),用企业管理器操作即可。

6.在镜像服务器分别还原数据库文件和事务日志文件,必须指定为RESTORE WITH NORECOVERY选项。

7.在主体服务器上用企业管理器开始设置镜像,运行模式制定为高性能(异步)。在制定服务账户步骤时,主体和镜像都指定为空即可。

8.镜像成功后,主体服务器显示(主体,已同步),镜像服务器显示(正在还原...)。

以上就是建立镜像的几个步骤。

另外,讲一下如何进行故障恢复的方法。主服务器Down掉后,备机紧急启动并且开始服务的方法:在镜像服务器上执行

USE master
ALTER DATABASE LS_SUPERVISIONDB SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS

以上代码执行成功后,镜像服务器上的LS_SUPERVISIONDB显示状态为(主体,已断开连接)。


主体服务器开机后,镜像服务器未进行主备切换前的状态如下:

镜像服务器上LS_SUPERVISIONDB显示状态为(主体,挂起)

主体服务器上LS_SUPERVISIONDB显示状态为(正在还原...)


原来的主服务器恢复,可以继续工作,需要重新设定镜像。将主体服务器启动后,在镜像服务器上执行

USE master
ALTER DATABASE LS_SUPERVISIONDB SET PARTNER RESUME; --恢复镜像
ALTER DATABASE LS_SUPERVISIONDB SET PARTNER SAFETY FULL --事务安全,同步模式
ALTER DATABASE LS_SUPERVISIONDB SET PARTNER FAILOVER; --切换主备

以上代码执行成功后,主体服务器显示(主体,已同步),镜像服务器显示(正在还原...)。在主体服务器上使用企业管理器将镜像的运行模式由“不带自动故转移功能障的高安全(同步)”改为高性能(异步)。到此,一次故障转移成功实现。