2012-02-16 107 views
1

我在家用電腦上設置了Microsoft SQL Server 2008 R2 Express。我的家用電腦有Windows 7,位於路由器後面。我對它進行了配置,我認爲可以,因爲我可以通過管理工作室連接到他。手段 - 我打開所有必要的端口,我配置SQL接受TCP上的連接。我還在我的路由器上設置了DynDNS,並通過我的DNS名稱連接,它可以工作。客戶端需要什麼遠程連接到SQL Server?

我還使用Microsoft PortQueryUI [http://www.microsoft.com/download/en/details.aspx?id=24009]來測試服務器是否可見並且來自我的工作計算機並且它是可見的。我的PortQueryUI輸出工作正常(附加Bloew),但其他網絡的人無法連接到我的服務器。他們已經在測試端口1434 UDP(大粗體)錯誤代碼0x00000002我在哪裏正確 - 0x00000000。

是什麼原因,在他們的電腦上有什麼需要做的?也許他們的網絡阻礙了某些東西從工作

我PortQueryUI輸出:

============================================= 

開始Portqry.exe將-n myhome.dyndns.net -e 1434 -p UDP ...

查詢目標系統,稱爲:

試圖解析名稱到IP地址...

名稱解析爲83.xxx.xxx.xxx

查詢...

UDP端口1434(MS-SQL-M服務):聽或過濾的

發送SQL Server查詢到UDP端口1434 ...

服務器的響應:

服務器名羅伯特 - 電腦服務 實例名SQL2008R2 IsClustered沒有 版本10.50.1600.1 ŧ CP 1433 NP \羅伯特 - 電腦服務\管\ MSSQL $ SQL2008R2 \ SQL \查詢

SQL Server的查詢響應====

UDP端口1434的====結束是偵聽

PortQry將.exe -n myhome.dyndns.net -e 1434 -p UDP退出並返回代碼0x00000000。

開始叫Portqry.exe將-n myhome.dyndns.net -e 1433 -p TCP ...

查詢目標系統:

myhome.dyndns.net

正在嘗試解析名稱到IP地址...

名稱解析爲83.xxx.xxx.xxx

查詢...

TCP端口1433(ms-sql -s服務):LISTENING portqry.exe -n myhome.dyndns.net -e 1433 -p TCP退出,返回代碼爲0x00000000。

+3

警告詞:不要讓sql server公開可用。你爲什麼要這麼做? – 2012-02-16 10:02:33

+0

以便其他人可以在其上工作。我已經改變dyndns和xxx'ed了ip,所以我認爲我很安全 – 2012-02-16 10:13:03

+0

祝你好運....... – 2012-02-16 10:15:04

回答

1

請確保防火牆上的端口1433在SQL處於打開狀態,爲安全起見,您應該在其上添加某種IP範圍/範圍。

您需要在數據庫屬性中將數據庫設置爲Accept Remote Connections。 您需要設置用戶名和密碼並授予其訪問數據庫的權限,以便您的遠程連接識別它。

這裏是允許連接的例子:

http://blogs.msdn.com/b/walzenbach/archive/2010/04/14/how-to-enable-remote-connections-in-sql-server-2008.aspx

這裏是連接的例子:

http://www.youtube.com/watch?v=hT9p_FPt720

0

我有同樣的問題,但我對1433年已經建立開放的端口在防火牆上。對我來說,解決辦法是在SQL 2012簡單:

  1. 轉到 「SQL Server連接管理器」
  2. 降下來SQL Server網絡配置
  3. MSSQLSERVER的協議>右鍵單擊TCIP/IP
  4. 上的每個「 TCP端口「輸入1433或任何您想要的端口
  5. 完成