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”)