2017-02-22 81 views
0

我嘗試使用Windows身份驗證,但我使用的服務器也是一個活動目錄服務器,所以我使用的是sql身份驗證。無法遠程訪問SQL Server(錯誤說:遠程系統拒絕網絡連接)

public const string con = "Data source=192.168.56.101,1433" + ";" +"Database=" + 
    database + ";" + "User ID=" + user + ";" + "password=" + password; 

這是在連接字符串

而且我仔細地配置和重新配置sqlserver的允許遠程連接並完全關閉防火牆關閉

+1

您可以使用SQL Server Management Studio進行連接嗎? – sheppe

+0

是的,我也可以通過我的設備ping包含數據庫的遠程服務器 –

+1

而不是用「Database =」指定數據庫,您是否嘗試過「Initial Catalogue =」? 閱讀更多在https://www.connectionstrings.com/sqlconnection/connect-via-an-ip-address/ – sheppe

回答

0

我解決了這個問題,因爲我懷疑1433端口是不是TCP連接的默認端口,由於服務器是虛擬機上, 的解決方案是重置配置爲SQL服務器管理TCP協議使用動態端口,並聽取所有,

0

確保TCP/IP是啓用SQL Server。您可以在Sql Server配置管理器的Sql Server網絡配置下找到該設置。 啓用後,在TCP/IP配置的屬性下,在IP地址選項卡中,確保您的IP處於活動狀態並記下端口(默認爲1433)。

在防火牆中打開TCP端口(默認設置爲1433)。 還要確保您的連接字符串遵循供應商可以理解的連接字符串。對於SQL Server,可以是:

Server = myServerAddress; Database = myDataBase; User Id = myUsername; Password = myPassword;

connectionstrings.com更多細節

+0

我重新配置服務器,使IP地址是一個靜態的,並指定TCP端口爲1433,並禁用了自動TCP端口分配,我還添加了「Network Library = DBMSSOCN」來覆蓋命名管道,現在至少我知道它不是連接字符串 –