当数据库镜像被破坏但主体仍处于活动状态时,网站会抛出异常

时间:2012-04-26 17:26:35

标签: c# asp.net sql-server sql-server-2008 mirroring

在紧急情况下,当我们不得不从我们的某个数据库中删除一个损坏的数据库镜像(Sql Server 2008)来重建它时,我们的c#网站偶尔开始(不是每个数据库连接)抛出一个异常,表示

“数据库X未配置为 System.Data.SqlClient.SqlInternalConnectionTds.LoginWithFailover 函数调用中的数据库镜像”

我可以看到为什么它会对丢失的镜像不满意,但我希望它能够停止破坏我的Web请求 - 如果数据库镜像关闭,我的最终用户不应受到影响。

1 个答案:

答案 0 :(得分:0)

看起来这是设计使然,但如果您连接到故障转移合作伙伴,则会打开,然后关闭镜像。

“如果指定了故障转移伙伴,但没有为数据库镜像配置故障转移伙伴服务器,并且主服务器(使用Server关键字指定)不可用,则连接将失败。”

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring.aspx

尽管如此,我希望我能告诉它不要抛出......这是镜像设置中的一个大问题。