SQL Server 2008 R2 数据库镜像部署 概述 “数据库镜像”是一种针对数据库高可用性的基于软件的解决方案。其维护着一个数据库的两个相同的副本,这两个副本分别放置在不同的SQL Server 数据库实例中。建议使用不同位置的两台服务器来承载。在同一时刻,其中一台上的数据库用于客户端访问,充当 “主体服务器”角色;而另一台则根据镜像会话的配置和状态,充当热备份服务器,即“镜像服务器角色”,这两种角色不是绝对的。 优点 增强了数据保护功能 提高了数据库的可用性 提高了生产数据库在升级期间的可用性 工作方式 在“数据库镜像会话”中,主体服务器和镜像服务器是相互通信和协作,并双方互补。主体服务器角色上的数据库副本为生产数据库。数据库镜像会尽快将主体数据库中执行的每一项操作(如:插入、更新和删除等)在镜像数据库中进行重新执行。这一过程是通过将活动事务日志记录的流发送到镜像服务器来完成,这可以尽快将日志记录按顺序应用到镜像数据库中。而且数据库镜像是在物理日志记录级别执行这一“重做”操作的。SQL Server 2008 R2(以下简称:SQL08R2)中,为了减少网络的负载,主体服务器会将事务日志记录压缩后进行发送。 运行模式 高性能模式(异步运行):事务不需要等待镜像服务器将日志写入磁盘便可提交,这样可最大程度地提高性能。这意味着事务不需要等待镜像服务器将日志写入磁盘便可提交,而此操作允许主体服务器在事务滞后时间最小的条件下运行,但可能会丢失某些数据。 高安全模式(同步运行):当会话开始时,镜像服务器使镜像数据库尽快与主体数据库同步。一旦同步了数据库,事务将在双方提交,这会延长事务滞后时间。 图 1 具有故障转移功能的高安全性模式(见证服务器): 这种模式最大的优点就是主体服务器断线时,镜像服务器上的数据库副本会自动启用,作为生产数据库为客户端提供服务。在这一结构中见证服务器并不能用于数据库,其主要作用是通过验证主体服务器是否已启用并运行来支持自动故障转移。 注意:只有在与主体服务器断开连接之后,镜像服务器仍和见证服务器保持相互连接时,镜像服务器才启动自动故障转移。 见证服务器的作用是验证指定的伙伴服务器是否已启动并正常运行。如果镜像服务器与主体服务器断开,但见证服务器仍与主体服务器保持连接,则镜像服务器无法启动故障转移。所以要实现故障转移的条件是主体服务器与镜像服务器断线,同时也与见证服务器断线;镜像服务...