SqlServer 局域網內不能連接對方數據庫?


一直都是連接的遠程測試服務器的數據庫,今天想把自己的數據庫開放出來讓公司同事連接,竟然連接失敗!轉了很大一個圈終於搞定了。

接下來就把這次心歷路程發出來,希望能幫助到有需要的博友。

PS: 我和同事的數據庫是 sqlserver2008,sql2000/2005請做參考。

因為是把我的機器開放出來讓同事連,所以以下把 本機 稱作 服務器,同事機 稱作 客戶端

一、telnet服務器

  首先想到用 telnet命令 做連接測試

  因為默認sqlserver服務占用的是1433端口,所以在客戶端輸入dos命令

  telnet 128.0.*.*  1433  // (128.0.*.* 是 服務器IP地址)

  毫無疑問,連接失敗。

  

  怎么解決呢?

  1.關閉防火牆

  首先想到是不是被防火牆阻止了,在服務器端打開控制面板->windows防火牆,點擊 關閉

  然后,再一次在客戶端 輸入dos命令 telnet 128.0.*.*  1433

  好吧,依然連接失敗。

  2.打開 sqlserver 配置管理器,修改配置(服務器端)

  不只是防火牆的問題,我還是看看sqlserver的配置是否出了問題吧

  開始->所有程序->Microsoft SQL Server 2008->配置工具->SQL Server 配置管理器

  雙擊打開 SQL Server 配置管理器(本地) 折疊菜單下的 SQL Server 網絡配置,點擊查看SQLEXPRESS的協議

  原來我的 管道協議Name pipes 和 TCP/IP 協議 都被禁用了!

  右鍵 啟用

  

  SQL Native Client 10.0 配置菜單下的 客戶端協議 也做如上改動,啟用這2個協議。

  這下在客戶端 輸入dos命令 telnet 128.0.*.*  1433,終於連接成功了。

  

--------------------------------------------------------------------------------------------------------------------------------------------------------

  當然,如果你的SQL Server服務沒有啟動,那肯定是連接不上的。

  同樣是配置管理器,點擊 SQL Server 服務,查看到該服務運行的狀態,如果是停止狀態,就要點選服務,右鍵 啟動 了

  

  有些時候啟動服務會報錯?會不會是你的1433端口被占用了?

  在dos窗口下輸入命令 netstat -ano | Find "1433"

  

  成功找到,表明確實被占用了,最后一個是占用該端口的進程ID。

  PS: 當然,我這里被占用的就是SQL Server服務本身;因為我已經啟用該服務了啊,看上圖,進程ID是不是1496?

  這個時候,你要么kill掉改進程,要么就該端口啦。殺進程太暴力我就不講了,改端口的話:

  還是SQL Server網絡配置,點擊SQLEXPRESS的協議,看見TCP/IP協議了么?

  這次,右鍵 TCP/IP協議  點擊 屬性,切換到 IP地址 這一欄,修改每個IP的 TCP端口 為你想指定的端口(這個端口不能再被占用啦)

  PS: 直接修改 IPAll 里面的端口應該也是可以的。見下圖(紅色區域中的數字就是你要修改的端口了)

  

  重新啟動一下SQL Server 服務吧。

--------------------------------------------------------------------------------------------------------------------------------------------------

好了,已經可以成功 telnet 了,我再用sa賬戶連接一次數據庫看看。

還是失敗!我在服務器端用sa賬戶也是連接失敗!

二、修改數據庫配置屬性(服務器端)

  既然如此,應該是sa賬戶出現了問題,我查查看

  開始->所有程序->Microsoft SQL Server 2008->SQL Server Management Studio

  如果你沒有這個管理工具,那就裝一下吧

  先用localhost,身份驗證選擇 ”windows身份驗證“登錄進去(這個應該是可以的吧)

  右鍵localhost,選擇屬性,點擊 安全性,修改 服務器身份驗證 為 “SQL Server 和 windows 身份驗證”

  

  同時,在左邊的 選擇頁 點擊 連接 ,找到 ”允許遠程連接到此服務器“,勾選上該選項。

  這下,我終於連接上了。

 

PS: 鑒於該篇博文是在第二天才寫的,中間發生的一些其他問題我暫時回想不起來,如果有博友遇到了其他問題,可以在下面留言。

  看看大家會給出什么解決辦法。

  

  

  

 

  

 

 

 

 

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM