2010-06-09 76 views
6

背景:
我使用的部署工具Visual Studio 2010中
我右點擊我的項目和所選封裝/發佈設置。把我所有的設置放在那裏......問題與數據庫部署(封裝/ SQL發佈選項卡)

然後我使用「web部署」將文件傳輸到運行遠程代理服務的遠程服務器,並且工作正常。我在Web.Release.config上做的轉換完成它們的功能,服務器可以訪問我手動創建的數據庫。

問題:
我的下一步是讓數據庫部署也工作。 我進入了打包/發佈SQL選項卡並輸入了目標數據庫的連接字符串。

(Data Source=MyDBServer;Initial Catalog=Database2;User ID=User;Password=pass) 

此數據庫已準備好接受導入。

我還輸入源數據庫的連接字符串。這生活在同一臺服務器上。

(Data Source=MyDBServer;Initial Catalog=Database;User ID=User;Password=pass) 

數據庫腳本選項都設置爲架構和數據(改變這個沒有區別)和數據庫腳本設置爲[自動生成的架構和數據]

現在當我部署此,我得到的錯誤:

Error 4 Web deployment task failed.((09/06/2010 16:41:51) An error occurred when the request was processed on the remote computer.)

(09/06/2010 16:41:51) An error occurred when the request was processed on the remote computer. The entry type 'Unknown' was not expected at this time. The serialization stream may be corrupted.

附加信息:
我可以成功地創建一個沒有問題的包。我查看了zip中的內容,並可以看到SQL生成良好(因此連接到數據庫時沒有問題)。然後,我可以複製這個SQL並將其作爲新數據庫的新查詢運行,並且表和數據創建正常。

我似乎無法弄清楚哪裏出了問題,我GOOGLE了錯誤,並沒有在整個互聯網上的條目。有人有主意嗎?

附錄:
要獲得什麼可能會在一些進一步的想法,我把整個包到服務器,並使用IIS進口它。它告訴我我需要SQL Server管理對象。所以我安裝了。 接下來嘗試告訴我,我的用戶沒有創建數據庫的權限,我認爲優秀的這一定是問題所在。 :授予訪問權限 - 重新運行。通過! 所以我刪除了所有的表,並回到VS2010點擊發布,我得到了同樣的錯誤。 :(

回答

3

排序吧!

謝天謝地,我完全沒了主意,當我回去的視頻通過Hanselman的。他提到,網絡部署代理可以擁有的權限。我去了一看,有它的屬性選項卡稱爲日誌上。

我進入帳戶的detials訪問的一個體面的水平,並點擊好的。

然後我重新啓動該服務的要求,以使更改。

然後我回到VS 2010並點擊Publish Web。

音樂給我的眼睛,我看到「發佈成功」的話,我檢查數據庫和表在那裏。優秀!

我覺得我有點過度興奮,如果你遇到這個問題,並且這個解決方案爲你解決了這個問題,那麼試着在喊出「YES !,是的,進去!當狂笑或人們會認爲你像我一樣怪異。

+1

介意發佈該Hanselpants視頻的參考鏈接? – 2010-08-20 03:18:03

+1

當然,看看我的其他問題。 http://stackoverflow.com/questions/2998440/where-can-i-find-up-to-date-information-walkthroughs-on-vs-2010-deployment(你想要的確切鏈接是:http:// live .visitmix.com/MIX10 /會話/ FT14) – 4imble 2010-08-20 09:16:54