我在Server1
(主要)和Server2
(次要)之间有一个高安全模式的数据库镜像会话
据此,同步数据镜像意味着
在主体数据库上提交的每个事务也会在镜像服务器上提交,从而保证数据的保护。这是通过等待在主体数据库上提交事务来实现的,直到主体服务器收到来自镜像服务器的消息,说明它已将事务的日志硬化到磁盘。请注意,等待此消息会增加事务的延迟
考虑到这一点,如果我Server1
完全失去(并且无法恢复)并使用
ALTER DATABASE [MyDatabase] SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
我只会丢失正在进行的交易Server1
吗?
正确,一旦主节点失去与辅助节点的连接(关闭),所有正在进行的事务将在主节点上回滚,并且永远不会到达辅助节点。提交的事务保证在该模式下写入镜像服务器上的磁盘。
这是一篇关于这个主题的更详细的优秀文章 - https://www.sqlskills.com/blogs/paul/a-sql-server-dba-myth-a-day-130-in-flight-transactions-continue-故障转移后/