0

我有兩個SQL Server計算機,和server2是多餘的,具有相同的數據。如何使用C#冗餘連接到SQL Server?

我的應用程序需要從表中msdb數據庫中選擇數據每隔1秒。但我的應用程序只能使用一個連接字符串進行連接。如何編輯我的應用程序可以同時使用兩臺服務器?

  • 的SQL Server 2000 SP4
  • 視窗服務器2003
  • C#

我的連接字符串是

server=10.15.13.70;database=msdb;user id=sa;pwd="" 

請告訴我。

+2

退房[Connectionstrings.com(HTTP://www.connectionstrings .com/sql-server) - 但我擔心像SQL Server 2000這樣的遺留系統(不再受MS支持),你會很自然的做到這一點。你需要在你的應用程序中有兩個連接字符串 - 一個用於server1,另一個用於server2 - 並且執行連接到應用程序代碼中的一個或另一個服務器的邏輯.... – 2011-03-10 09:21:09

+0

http://stackoverflow.com/questions/ 182101/SQL服務器-2000實時數據鏡像 – 2011-03-10 09:25:07

+0

常見問題 - SQL Server 2000中 - 故障轉移羣集 :http://support.microsoft.com/kb/260758 – 2011-03-10 09:26:22

回答

-1
Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True; 

(從http://www.mssqltips.com/tip.asp?tip=1289

+2

這是否存在SQL Server ** 2000 **已經??我相信這是2005年的一個新功能...... – 2011-03-10 09:23:17

0

選擇一個服務器隨機並打開連接之前在連接字符串中插入的名稱或IP爲。

using (SqlConnection _con = new SqlConnection("server=" + giveMeAServer() + ";database=msdb;user id=sa;pwd=")) 

和:

private String giveMeAServer() 
{ 
    return "10.15.13.70"; 
} 

適當修復,特別是如果你每秒重新連接儘可能多一次,是最有可能建立某種形式的集羣上的SQL Server端,並連接到它,而不是讓應用程序擔心負載均衡數據庫後端。

0

你在找什麼是Load balancing。這是一種只能應用於只讀數據庫的技術。它基本上將負載分散到多個服務器上。

這裏是負載由Microsoft SQL Server 2000的平衡很好看。

http://technet.microsoft.com/en-us/library/cc917707.aspx

恕我直言,你試圖達到什麼不應該被編程,但在硬件級別進行處理。

1

更好的是你嘗試打開一些間隔連接5ms的說,如果連接着通過連接字符串被打開,切換到其他服務器