SQL Server 2005 不允許遠(yuǎn)程連接解決方法
成都創(chuàng)新互聯(lián)公司是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷策劃、微信小程序定制開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十年以來,已經(jīng)為成百上千木制涼亭各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)。現(xiàn)在,服務(wù)的成百上千客戶與我們一路同行,見證我們的成長;未來,我們一起分享成功的喜悅。
做課程設(shè)計(jì)時,很多學(xué)生都遇到這個問題。把解決方法寫在這兒,供參考。
剛剛安裝的數(shù)據(jù)庫系統(tǒng),按照默認(rèn)安裝的話,很可能在進(jìn)行遠(yuǎn)程連接時報(bào)錯,通常是錯誤:"在連接到 SQL Server 2005 時,在默認(rèn)的設(shè)置下 SQL Server 不允許進(jìn)行遠(yuǎn)程連接可能會導(dǎo)致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 SQL Server 的連接) "搜MSDN,上面有一片機(jī)器翻譯的文章,是在讓人難以明白,現(xiàn)在總結(jié)如下:明白了SQL Server是個網(wǎng)絡(luò)數(shù)據(jù)庫就可迎刃而解了,簡單的分為下面的集中情況。
1. 數(shù)據(jù)庫引擎沒有啟動。
有兩種啟動方式:
(1)開始-程序-Microsoft SQL Server 2005-SQL Server 2005外圍應(yīng)用配置器,在打開的界面單擊"服務(wù)的連接的外圍應(yīng)用配置器",在打開的界面中找到Database Engine,單擊"服務(wù)",在右側(cè)查看是否已啟動,如果沒有啟動可單擊"啟動",并確保"啟動類型"為自動,不要為手動,否則下次開機(jī)時又要手動啟動;
(2)可打開:開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server Configuration Manager,選中SQL Server 2005服務(wù)中SQL Server(MSSQLSERVER) ,并單擊工具欄中的"啟動服務(wù)"按鈕把服務(wù)狀態(tài)改為啟動;
使用上面兩種方式時,有時候在啟動的時候可能會出現(xiàn)錯誤,不能啟動,這時就要查看"SQL Server 2005配置管理器"中的SQL Server 2005網(wǎng)絡(luò)配置-MSSQLSERVER協(xié)議中的VIA是否已啟用,如果已啟用,則把它禁止.然后再執(zhí)行上述一種方式操作就可以了.
2. 是否已經(jīng)允許遠(yuǎn)程連接。
這個部分可以簡單的分為4個方面,分別是在 SQL Server上啟用遠(yuǎn)程連接、啟用SQL Server 瀏覽服務(wù)、在Windows 防火墻中為SQL Server 2005 創(chuàng)建例外和在Windows 防火墻中為“SQLBrowser”創(chuàng)建例外。下面是幾個具體的操作方式,摘自MSDN,個人覺得文章的黑體部分應(yīng)當(dāng)特別的一起我們的注意。
在SQLServer 實(shí)例上啟用遠(yuǎn)程連接
1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
3.然后單擊展開“數(shù)據(jù)庫引擎”, 選中“遠(yuǎn)程連接”,在右邊選中“本地連接和遠(yuǎn)程連接”,
再選擇要使用的協(xié)議,( 這個地方應(yīng)當(dāng)啟用TCP/IP 和命名管道服務(wù)!)單擊“應(yīng)用”,您會看到下消息:
“直到重新啟動數(shù)據(jù)庫引擎服務(wù)后,對連接設(shè)置所做的更改才會生效?!?,單擊“確定”按鈕返回
4.展開“數(shù)據(jù)庫引擎”, 選中“服務(wù)”,在右邊單擊“停止”,等到 MSSQLSERVER 服務(wù)停止,
然后單擊“啟動”,重新啟動MSSQLSERVER 服務(wù)。
啟用 SQLServer 瀏覽器服務(wù)
1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
3.然后單擊展開“SQL Server Browser”, 選中“服務(wù)”,在右邊“啟動類型”選擇“自動”,
再單擊“啟動”,單擊“確定”按鈕返回
在Windows 防火墻中為“SQL Server 2005”創(chuàng)建例外
1.在 Windows 防火墻設(shè)置界面中,選擇“ 例外” 選項(xiàng)卡,然后單擊“添加程序”
2.在“添加程序窗口”中單擊“瀏覽”
3.然后找到“C:\ProgramFiles\Microsoft Files\Microsoft SQL Server\ MSSQL.1 \MSSQL\Binn\sqlservr.exe”,
單擊“確定”返回
注意 : 路徑可能會根據(jù) SQL Server 2005 安裝不同而不同。 MSSQL.1 是占位符,對應(yīng)數(shù)據(jù)庫實(shí)例ID。
4.對每個需要打開遠(yuǎn)程訪問的SQL Server 2005 實(shí)例,重復(fù)步驟 1 至 3。
在Windows 防火墻中為“SQLBrowser”創(chuàng)建例外
1.在 Windows 防火墻設(shè)置界面中,選擇“ 例外” 選項(xiàng)卡,然后單擊“添加程序”
2.在“添加程序窗口”中單擊“瀏覽”
3.然后找到“C:\ProgramFiles\Microsoft Files\Microsoft SQL Server\90\Shared\sqlbrowser.exe”,
單擊“確定”返回
注意 : 路徑可能會根據(jù) SQL Server 2005 安裝不同而不同。
sqlserver的是客戶機(jī)連接服務(wù)器的一種方法,當(dāng)它打開時,可以從服務(wù)器讀取數(shù)據(jù),看客戶端的權(quán)限,有時也能進(jìn)行寫操作,當(dāng)它關(guān)閉時,客戶機(jī)不能訪問服務(wù)器中的數(shù)據(jù)庫。關(guān)閉方法如下:
方法一:用防火墻,阻止對外服務(wù),主要禁止1433端口的聯(lián)入,并把它放到防火墻的規(guī)則的最前面。
方法二:關(guān)閉sql server2005 對外服務(wù):
◆1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
◆2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
◆3.然后單擊展開“database engine"(數(shù)據(jù)庫引擎), 選中“遠(yuǎn)程連接”,在右邊選中“僅本地連接”。 單擊“應(yīng)用”,單擊“確定”按鈕返回。
◆4.展開“數(shù)據(jù)庫引擎”, 選中“服務(wù)”,在右邊單擊“停止。
此外:關(guān)閉SQLServer 瀏覽器服務(wù):
◆1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
◆2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
◆3.然后單擊展開“SQL Server Browser”, 選中“服務(wù)”,在右邊“啟動類型”選擇“禁用”,再單擊“停止”,單擊“確定”按鈕返回。
我們一般在用到sql server+bs模式搭建服務(wù)器的時候,當(dāng)sql server 與程序安裝到一臺機(jī)器上,那么完全沒有必要讓sql server 對外服務(wù),為了更好的安全性,我們可以把sql server 對遠(yuǎn)程的服務(wù)關(guān)閉。
1.用防火墻,阻止對外服務(wù)。(這個就不多說了)
2.關(guān)閉sql server2005 對外服務(wù):
◆1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
◆2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
◆3.然后單擊展開“database engine"(數(shù)據(jù)庫引擎), 選中“遠(yuǎn)程連接”,在右邊選中“僅本地連接”。
單擊“應(yīng)用”,您會看到下消息: “直到重新啟動數(shù)據(jù)庫引擎服務(wù)后,對連接設(shè)置所做的更改才會生效?!保瑔螕簟按_定”按鈕返回
◆4.展開“數(shù)據(jù)庫引擎”, 選中“服務(wù)”,在右邊單擊“停止”,等到 MSSQLSERVER 服務(wù)停止,然后單擊“啟動”,重新啟動MSSQLSERVER 服務(wù)。
3.關(guān)閉SQLServer 瀏覽器服務(wù):
◆1.指向“開始-程序-Microsoft SQL Server 2005-配置工具-SQL Server 外圍應(yīng)用配置器”
◆2.在“SQL Server 2005 外圍應(yīng)用配置器”頁, 單擊“服務(wù)和連接的外圍應(yīng)用配置器”
◆3.然后單擊展開“SQL Server Browser”, 選中“服務(wù)”,在右邊“啟動類型”選擇“禁用”,再單擊“停止”,單擊“確定”按鈕返回
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或訪問被拒絕
這個是關(guān)鍵,也就是說,你在連接字符串中寫的SQL server 的名字不存在。