.net镜像数据库和连接池



我对在连接字符串中使用.net Principal/Mirror数据库很感兴趣。

我想问,在故障切换的情况下,池连接会发生什么?他们被终止了吗?

要让您详细了解发生了什么,请阅读此处的

  • http://msdn.microsoft.com/en-nz/library/ms175484.aspx
  • http://www.sqlskills.com/blogs/paul/a-sql-server-dba-myth-a-day-130-in-flight-transactions-continue-after-a-failover/
  • http://blogs.msdn.com/b/spike/archive/2010/12/08/clarification-on-the-failover-partner-in-the-connectionstring-in-database-mirror-setup.aspx

简而言之,一旦在连接字符串中添加了故障切换伙伴,驱动程序和SQL Server就会发挥神奇的作用。这意味着驱动程序确保您的应用程序指向正确的数据库,SQL Server确保队列中挂起的任何事务在成为主镜像之前都已写入镜像(在故障转移时成为主镜像)。

这并不能保证数据被完全保存——您仍然需要对代码执行某些操作,并将所有内容都包含在事务中,以便在流程未完成时回滚。

最新更新