SQL Server数据库镜像的FailOver自动连接

SQL Server配置数据库镜像后,可能有朋友们会比较有疑惑,你一下搞两个数据库出来,他们的ip地址都不一样,到时候数据库切换过去了,我的数据库的连接字符串可如何是好?难道还得在代码中去控制是连接哪个数据库吗?

其实这个问题是这样的,使用ADO.NET或者SQL Native Client能够自动连接到故障转移后的伙伴,连接字符串如下所示:

ConnectionString="DataSource=A;FailoverPartner=B;Initial Catalog=AdventureWorks;Integrated Security=true;"

DataSource= A;这个就是我们常用的主数据库的ip地址,Failover Partner=B;这个填写的就是镜像数据库的ip地址,一旦出现了连接错误,ado.net会在超时以后自动去连接镜像数据库。

  SqlConnectionStringBuilder sqlsb = new SqlConnectionStringBuilder();

  sqlsb.DataSource = "ServerA";

  sqlsb.FailoverPartner = "ServerB";

  sqlsb.UserID = "XXX";

  sqlsb.Password = "";

  sqlsb.InitialCatalog = "DataBase";

  SqlConnection sqlconn = new SqlConnection();

  sqlconn.ConnectionString = sqlsb.ConnectionString;

  String ActiveServer = sqlconn.DataSource;

原文地址:https://www.cnblogs.com/liuxuqiang/p/5047586.html