sqlserver2008 数据库镜像服务配置完成后,大家会发现我们有了两个数据库服务,这两个服务可以实现自动故障转移,那么我们的程序如何实现自动连接正常的数据库呢?
这个问题很简单,使用ADO.NET或者SQL Native Client能够自动连接到故障转移后的伙伴,连接字符串如下所示:
ConnectionString="DataSource= Master;Failover Partner=Slave;Initial Catalog=dbtest;User Id=SA;Password=123456;Pooling=true;MAX Pool Size=256;Min Pool Size=2;Connection Lifetime=3;"
其中:
DataSource= Master;这个就是我们常用的主数据库的ip地址
Failover Partner=Slave;这个填写的就是镜像数据库的ip地址,一旦出现了连接错误,ado.net会在超时以后自动去连接镜像数据库。
Initial Catalog=dbtest;这个填写数据库名称
User Id=SA; 这个填写数据库用户名
Password=123456 这个填写数据库密码
大家看出来了,其他的属性和以前的一样,最重要的是Failover Partner属性,这个属性就是用来指定镜像服务器的关键字,但在不同的数据库连接驱动中使用方式还不太相同,如:
1、OLE DB: FailoverPartner (no space between“Failover” and“Partner”)
2、ODBC: Failover_Partner (underscore between“Failover” and“Partner”)
3、ADO.NET: Failover Partner (one space between“Failover” and“Partner”)
4、JDBC: failoverPartner (no space between“failover” and“Partner”)