由於答案並沒有真正解決問題,所以我在ASP.Net上發佈了這個問題並完成了它的修改。我將在此處發佈編輯的問題:SQL Express&IIS - 如果手動分離數據庫,數據庫不會附加?
我一直在使用attachDB連接字符串,而且通常會部署到IIS。該網站工作正常,但是,我對數據庫進行了一些更改,並且最新版本不會複製它所說的使用中的文件。
我打開SQL管理工作室,看到它被安裝,所以我做了一個dettach。
當時我能夠毫無問題複製的新版本,但是,當我下一次運行該網站,我得到:
Unable to open the physical file "C:\inetpub\wwwroot\vs\App_Data\aspnetdb.mdf". Operating system error 5: "5(failed to retrieve text for this error. Reason: 15105)". An attempt to attach an auto-named database for file C:\inetpub\wwwroot\vs\App_Data\aspnetdb.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
而且,如果我嘗試訪問.NET用戶或其他幾個選項IIS管理器中,我得到以下錯誤:
.NET Users
There was an error while performing this operation.
Details:
A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.)
OK
我試圖重新啓動應用程序池,重新啓動SQL實例,甚至重新啓動計算機。
沒有什麼幫助,我無法弄清楚什麼是錯誤...它在哪裏記住以前的數據庫連接的位置,爲什麼它不會自動重新連接數據庫?有人說他們在2 1/2小時,但是當一個數據庫沒有被使用時,我等了5個小時,並且SQL管理器顯示它仍然連接着。
當我手動重新附加數據庫時,一切正常。
該消息表示該文件已附加到主更改sysdatabases中,以查看它認爲該文件已附加到哪個數據庫。 – u07ch 2009-12-08 12:07:55
更改是爲了讀取支票 – u07ch 2009-12-08 15:29:36
還要檢查SQL服務器進程用戶是否有權查看已將文件放入的文件夾 – u07ch 2009-12-08 15:30:20