自动故障转移是监控数据库镜像在高可用性模式(需要有见证服务器并把SAFETY设置为FULL)下提供的功能。由于数据库镜像是在高可用模式下建立的,并且创建了见证服务器,因此当主服务器发生故障时将会启动自动故障转移。在自动故障转移场景中会发生下列事件:
  (1)故障发生:主数据库变得不可用。这可能是由电源故障、硬件故障、存储故障或其他一些原因引起的。
  (2)检测到故障:镜像服务器和见证服务器检测到故障。注意,合作者和见证服务器之间会一直ping对方以确定对方是否存在。当然,这不只是简单的ping擦破做,还需要检测SQL Server是否可用,主数据库是否可用等。需要为ping操作指定超时,在建立数据库镜像会话时,默认的超时为10秒,可以使用如前所述的ALTER DATABASE命令修改超时值。
  如果主服务器在超时时间内没有响应ping消息,就可以认为主服务器已宕机,这样故障就被检测出来了。不应该修改默认设置的超时时间10秒,或者至少不要把超时时间设置为少于10秒,因为在高负载和一些网络环境下可能会发生故障误报,这会导致数据库在主服务器和镜像服务器之间来回切换。
  (3)在镜像服务器上执行完全的重做操作:到现在为止镜像数据库一直处于还原状态,并持续对日志进行重做操作(把日志前滚熬数据库上)。当检测到故障后,镜像服务器需要恢复该监控数据库。为了完成此任务,镜像服务器需要对重做队列中剩余的日志项执行重做操作。
  (4)做出故障转移决定:现在镜像服务器需要联系见证服务器以形成仲裁,并且需要决定是否把数据库故障转移到镜像服务器。注意,这里监控数据库镜像会话被设置为具有自动故障转移的高安全性模式,因此需要有见证服务器才能进行自动故障转移。这个决定过程将需要大约1秒钟,因此如果在步骤(3)之前主服务器能够恢复,那么故障转移会中止。
  (5)镜像服务器成为主服务器:在进行故障转移决定的过程中重做操作会继续执行。当见证服务器和镜像服务器在故障转移决定形成仲裁时,数据库就完整恢复了。镜像服务器的角色转换成主服务器,恢复任务成功完成(这包括设置各种数据库状态以及回滚正在运行的系统事务和用户事务),然后数据库就可以向客户端提供服务,并且可以在数据库上执行各种普通操作。
  (6)撤销:新的主服务器的事务日志中可能会存在一些未提交的事务,比如有些事务可能在主服务当即前正在运行,但是还没有被提交,而这部分事务日志又被发送到了镜像服务器,因此需要回滚这部分事务。
  正常情况下,在该运行模式下故障转移花费的时间非常短,通常只需要几秒钟,但在很大程度上依赖重做阶段的效率。如果在主服务器宕机钱镜像服务器已经赶上主服务器,那么重做阶段将不需要花费时间。应用重做记录所需的时间依赖于镜像服务器上重做队列的长度和重做速率。注意,如果mirroring state不处于同步状态,那么不会发生故障转移。此外,还有一些性能计数器,可以从这些计数器中估算在镜像服务器上应用重做队列中的事务日志所需的时间。

关于WorkWIn企业监控软件:

WorkWin历经十余年发展历程,满足各种苛刻电脑监控需求,有效规范员工上网行为。每天都有成千上万家企业的诸多电脑正在运行WorkWin。WorkWin基于纯软件设计,无需添加或改动任何硬件,使用一台管理机监控全部员工机电脑。WorkWin监控软件的两大必杀技是是:知道员工在做什么(监控包括屏幕、上网在内的一举一动),限制员工不能做什么(禁止网购、游戏、优盘等)。点击功能特点了解更多。

版权所有,南京网亚计算机有限公司 。本文链接地址: 监控数据库的自动故障转移模式