SQL Server 2005 在建立與伺服器的連線時出錯,錯誤26
今天在用VISIO反向工程時,突然無法連結SQL Server資料庫了,錯誤程式碼如下
在建立與伺服器的連線時出錯。在連線到 SQL Server 2005 時,在預設的設定下 SQL Server 不允許進行遠端連線可能會導致此失敗。 (provider: SQL 網路介面, error: 26 - 定位指定的伺服器/例項時出錯) (Microsoft SQL Server, Error: -1)
於是開始檢查
首先進入【開始】—>【Microsoft SQL Server 2005】->選擇 【配置工具】-> 開啟【SQL Server Configuration Manager】
發現Sql Server(SQLEXPRESS)執行正常,而Sql Server Browser沒有開啟,仔細一看,服務被禁止了,於是
在命令列輸入 services.msc 找到Sql Server Browser服務,把它開啟。
回到SQL Server Configuration Manager,把Sql Server Browser開啟,再次連結,成功,執行正常。
下面是網上搜集的資料,但是沒能解決這次的問題,不過寫的很好收藏了,在這與大家分享吧
在建立與伺服器的連線時出錯。在連線到 SQL Server 2005 時,在預設的設定下 SQL Server 不允許進行遠端連線可能會導致此失敗。 (provider: 命名管道提供程式, error: 40 - 無法開啟到 SQL Server 的連線)
解決方法:
你可能連線的資料庫是SQL Server 2005 Express Edition,從"開始選單"調出"配置工具"中的"SQL Server 外圍應用配置器".然後單擊"服務和連線外圍應用配置器",選擇資料庫例項(預設是"SQLEXPRESS",選擇database Engine的"遠端連線"中的"本地連線和遠端連線(用TCP/IP)",這樣即可開啟SQL Server 2005的遠端連線(預設不允許).
其實你可以
配置檔案:
<connectionStrings>
<add name="testDBConnectionString" connectionString="Data Source=./SQLEXPRESS;AttachDbFilename=D:/wwwroot/sszTest1/App_Data/testDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
程式呼叫時:
SqlConnection sqlCon = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["testDBConnectionString"].ToString());//testDBConnectionString
或都直接生成connection:
SqlConnection sqlCon = new SqlConnection("Data Source=.//SQLEXPRESS;AttachDbFilename=D://wwwroot//sszTest1//App_Data//testDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
只要連線成功,你再生成DataSource應該不成問題.
在建立與伺服器的連線時出錯。在連線到 SQL Server 2005 時,在預設的設定下 SQL Server 不允許進行遠端連線可能會導致此失敗。 (provider: SQL 網路介面, error: 26 - 定位指定的伺服器/例項時出錯)
首選請確認SQL SERVER EXPRSS已安裝到本地計算機上,並且SQL SERVER (SQLEXPRESS)服務已經成功啟動。如果問題仍然存在,可以嘗試應開啟“SQL Server 外圍應用配置器”,選擇“服務和連線的外圍應用配置器”,然後將“遠端連線”配置為“同時使用 TCP/IP 和 named pipes”
由於啟動使用者例項的程序時出錯,導致無法生成 SQL Server 的使用者例項。該連線將關閉。
將連線字串中的“User Instance=True”修改為“User Instance=False”即可。
相關參考文章請參閱《非管理員使用者例項》
無法將檔案 'X:/Website/App_Data/Database.mdf' 作為資料庫 ''. 附加。當前命令發生了嚴重錯誤。應放棄任何可能產生的結果。
需要為X分割槽以及X分割槽的子資料夾和檔案分配Users組的“讀取”許可權。
嘗試為檔案 X:/Website/App_Data/Database.mdf 附加自動命名的資料庫,但失敗。已存在同名的資料庫,或指定的檔案無法開啟或位於 UNC 共享目錄中。
首選要確認已經為X分割槽以及X分割槽的子資料夾和檔案分配了Users組的“讀取”許可權。如果問題仍然存在,請使用SQL Server Management Studio連線到SQLEXPRESS資料庫例項,檢查是否有名稱是“Database”的資料庫存在。如果有,分離同名數據庫即可。
無法開啟使用者預設資料庫。登入失敗。
使用者 'NT AUTHORITY/NETWORK SERVICE' 登入失敗。
資料庫檔案Database.mdf 的讀寫許可權被設定成只有NETWORK SERVICE才具有。解決方法是先停止掉SQL SERVER (SQLEXPRESS)服務,然後從父項整合許可權,再次啟動SQL SERVER (SQLEXPRESS)服務即可。