对于使用Azure SQL数据库的高可用性服务,我使用“使用两个Azure区域实现业务连续性和最小停机时间”的方法。
我在不同的区域配置了两个带有流量管理器的webapp(一个是使用fg-name.database.windows.net连接字符串进行读写操作,另一个是使用fg-name.userdary.database.windows.net进行只读操作。现在,请检查以下步骤-
步骤1-如果我的主sql服务器工作正常,那么我的连接字符串(fg-name.database.windows.net)也将适用于主webapp的所有读写操作。
步骤2-如果我的主sql服务器停机(或区域停机),且我已将宽限期设置为1小时,则流量管理器将使用第二个web应用程序,其中我使用fg-name.secudary.database.windows.net连接字符串,以便用户可以在1小时内执行只读操作。
Step3 -在故障切换开始1小时后,我需要在辅助webapp中将连接字符串从fg-name.secudary.database.windows.net更改为(fg-name.database.windows.net),以便用户可以执行读写操作。
我面临的问题是,在c#应用程序中,我可以根据哪些基础将连接字符串从只读更改为读写,然后再将其读写更改为只读。我需要检查SQLexceptions的编号吗?
如果我错了,请纠正我。
发布于 2019-03-01 14:11:21
在这种情况下,您可以使用自动故障转移组,并在主区域和辅助区域之间使用相同的读/写,因此如果它停止工作,azure将自动故障切换到辅助区域。您可以使用故障转移r/w侦听器作为连接字符串,并且不需要手动更改连接字符串中的任何内容。
https://stackoverflow.com/questions/51099329
复制相似问题