2015-10-07 54 views
-2

我試圖連接到一個SQL服務器在AWS上運行,位於一個虛擬機上,虛擬機和SQL服務器的IP地址是不同的,任何人都可以幫我創建一個連接字符串嗎?如何連接到AWS上運行的SQL Server?

下面的連接字符串工作在VM內,但不在外面,我想連接:

sConnString = "Provider=SQLOLEDB;Persist Security Info=True;User ID=***;password=***;Initial Catalog=Dbname;Data Source=10.0.1.122;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=****;Use Encryption for Data=False;Tag with column collation when possible=False" 

在運行虛擬機之外的相同的查詢,我得到一個錯誤說

「無法連接到服務器「

有什麼我應該做的?請幫忙!

Rakshit

+0

是否有防火牆? SQL Server是否設置爲偵聽來自外部主機的連接? –

回答

0

轉到您的EC2控制面板,安全組和編輯應用到你的虛擬機安全組的入站規則。

您應該添加您的IP地址允許IP4地址入站,POR 1433

呀,亞馬遜EC2只支持IP4所以如果你的互聯網服務提供商是給你的只有你炒IP6。

可能發生的情況是,Windows防火牆處於打開狀態並配置爲拒絕到端口1433的外部連接(這不太可能,因爲SQL Server安裝會爲您在Windows防火牆上添加例外),但以防萬一,請檢查一下。

是的,因爲您可能從家中連接,您的IP4地址可能會不時變化(取決於您的ISP的穩定性),因此您必須在安全組面板中允許您的新IP,再次,所以...壞主意。

您可以打開1433端口的任何IP,但隨後你會在你的Windows事件日誌看到很多的「登錄失敗,用戶sa」的......從中國或俄羅斯的IP地址來了...

無論如何...只要檢查防火牆,讓你的服務器像你需要的一樣薄弱並且用手指交叉。