SQL Server 不允許進行遠程連接的解決辦法

SQL Server 不允許進行遠程連接的解決辦法

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

     剛剛安裝的數據庫系統,按照默認安裝的話,很可能在進行遠程連接時報錯,通常是錯誤:"在連接到 SQL Server 2005 時,在默認的設置下 SQL Server 不允許進行遠程連接可能會導致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 SQL Server 的連接)" 或 "在連接到 SQL Server 2005 時,在默認的設置下 SQL Server 不允許進行遠程連接可能會導致此失敗。(provider: SQL 網絡接口, error: 26 - 定位指定的服務器/實例時出錯)"搜MSDN,上面有一片機器翻譯的文章,是在讓人難以明白,現在總結如下:明白了SQL Server是個網絡數據庫就可迎刃而解了,簡單的分爲下面的集中情況。


1.  數據庫引擎沒有啓動。有兩種啓動方式:

     (1)開始->程序->Microsoft SQL Server 2005->SQL Server 2005外圍應用配置器,在打開的界面單擊"服務的連接的外圍應用配置器",在打開的界面中找到Database Engine,單擊"服務",在右側查看是否已啓動,如果沒有啓動可單擊"啓動",並確保"啓動類型"爲自動,不要爲手動,否則下次開機時又要手動啓動;

     (2)可打開:開始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,選中SQL Server 2005服務中SQL Server(MSSQLSERVER) ,並單擊工具欄中的"啓動服務"按鈕把服務狀態改爲啓動;

      使用上面兩種方式時,有時候在啓動的時候可能會出現錯誤,不能啓動,這時就要查看"SQL Server 2005配置管理器"中的SQL  Server 2005網絡配置->MSSQLSERVER協議中的VIA是否已啓用,如果已啓用,則把它禁止.然後再執行上述一種方式操作就可以了.

2.        是否已經允許遠程連接。

這個部分可以簡單的分爲4個方面,分別是在 SQL Server上啓用遠程連接、啓用SQL Server 瀏覽服務、在Windows 防火牆中爲SQL Server 2005 創建例外和在Windows 防火牆中爲“SQLBrowser”創建例外。下面是幾個具體的操作方式,摘自MSDN,個人覺得文章的黑體部分應當特別的一起我們的注意。

2.1 在SQLServer 實例上啓用遠程連接
 (1).指向“開始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外圍應用配置器”
 (2).在“SQL Server 2005 外圍應用配置器”頁, 單擊“服務和連接的外圍應用配置器”
 (3).然後單擊展開“數據庫引擎”, 選中“遠程連接”,在右邊選中“本地連接和遠程連接”,
再選擇要使用的協議,( 這個地方應當啓用TCP/IP 和命名管道服務!)單擊“應用”,您會看到下消息:“直到重新啓動數據庫引擎服務後,對連接設置所做的更改纔會生效。”,單擊“確定”按鈕返回
 (4).展開“數據庫引擎”, 選中“服務”,在右邊單擊“停止”,等到 MSSQLSERVER 服務停止,然後單擊“啓動”,重新啓動MSSQLSERVER 服務。

2.2 啓用 SQLServer 瀏覽器服務
(1).指向“開始->程序->Microsoft SQL Server 2005->配置工具->SQL Server 外圍應用配置器”
(2).在“SQL Server 2005 外圍應用配置器”頁, 單擊“服務和連接的外圍應用配置器”
(3).然後單擊展開“SQL Server Browser”, 選中“服務”,在右邊“啓動類型”選擇“自動”,
再單擊“啓動”,單擊“確定”按鈕返回

2.3 在Windows 防火牆中爲“SQL Server 2005”創建例外
(1).在 Windows 防火牆設置界面中,選擇“ 例外” 選項卡,然後單擊“添加程序”
(2).在“添加程序窗口”中單擊“瀏覽”
(3).然後找到“C:/ProgramFiles/Microsoft Files/Microsoft SQL Server/ MSSQL.1 /MSSQL/Binn/sqlservr.exe”,
單擊“確定”返回
注意 : 路徑可能會根據 SQL Server 2005 安裝不同而不同。 MSSQL.1 是佔位符,對應數據庫實例ID。
(4).對每個需要打開遠程訪問的SQL Server 2005 實例,重複步驟 1 至 3。

2.4 在Windows 防火牆中爲“SQLBrowser”創建例外
(1).在 Windows 防火牆設置界面中,選擇“ 例外” 選項卡,然後單擊“添加程序”
(2)在“添加程序窗口”中單擊“瀏覽”
(3)然後找到“C:/ProgramFiles/Microsoft Files/Microsoft SQL Server/90/Shared/sqlbrowser.exe”,
單擊“確定”返回
注意 : 路徑可能會根據 SQL Server 2005 安裝不同而不同。

其他問題

3.1 sa不能登陸的問題,解決辦法如下:

用Windows身份驗證登陸,在"屬性"窗口中,   轉到"Security"(安全性)項,   在"服務器身份驗證"中設置爲"SQL   Server和Windows身份驗證模式",   確定, 根據提示,   你應該重新啓動sql服務。如果執行    

  EXEC   sp_password   null,null,''sa''    

  ALTER   LOGIN   sa   ENABLE  

  這句話時報如下的錯:       

  Msg   15118,   Level   16,   State   1,   Line   1   

  密碼有效性驗證失敗。該密碼不夠複雜,不符合   Windows   策略要求。   

   

則說明你的服務器的密碼策略有複雜性要求(SQL   2005的密碼複雜性與Windows的密碼複雜性策略是關聯的),則要求你把sa的密碼設置爲一個複雜的密碼,   因此得改爲如下語句:   

    

  EXEC   sp_password   null,   ''guoqiang1234'',   ''sa''      

  ALTER   LOGIN   sa   ENABLE         

   

--  sp_password   語法如下:   

--  sp_password   [舊密碼],   <新密碼>,   [登錄名]

3.2  IP地址不能連接

在使用.NET開發進行時,會遇到使用連接字符串連接SQL Server 2005數據庫使用機器名稱和localhost都能連接,但是使用IP地址卻不能連接的問題,

解決的辦法是在SQL Server實例上啓用本地和遠程連接,並且在選擇協議的時候使用TCP/IP和命名管道服務即可解決。

文章出處:http://www.diybl.com/course/7_databases/sql/sqlServer/2008531/118420.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章