Asp.net
在生產伺服器上執行 EF 遷移的最佳方法是什麼?
是)我有的:
- VS2015
- ASP.NET 5 MVC 6 項目
- 英孚 7
- 我的項目的一些遷移
- Azure 網站
- 我通過 VS“發布..”嚮導發布。
我需要的:
- 我需要知道在生產數據庫上執行遷移的最佳方式是什麼。
- 我更喜歡可以自動化的東西。最好的解決方案是集成在“發布”嚮導中的東西。
筆記:
- 我正在使用“dnx ef 數據庫更新”在我的開發站上執行我的遷移。我想我可以使用 webapp PS 控制台,但是……這似乎不是正確的方法。
- 我知道我可以為遷移生成一個 SQL 腳本,但這似乎太手動了。
- 我記得過去“發布”嚮導有“執行 EF 遷移”選項。現在看不到了。
這取決於誰可以控制生產數據庫(開發團隊或單獨的 DBA 團隊)。
在我參與的一個客戶項目中,每個開發人員都有自己的數據庫副本,他們在其中測試了所有遷移。簽入應用程式碼和遷移程式碼後,我們使用 TeamCity 作為 CI 伺服器來部署網站、更新暫存數據庫並執行單元測試和集成測試。
我們向 DBA 團隊提供了 SQL 腳本(由 EF 生成)以針對生產數據庫執行。我們的開發團隊從未接觸過生產數據庫。
如果您被允許更新生產數據庫,您可以自己進行。但我強烈建議您檢查並執行 EF 生成的腳本,如有必要,您可以回滾。另外,不要忘記根據需要備份生產數據庫。
由於您想要自動化(並且如果您對它感到滿意),您可以使用 CI 系統來更新您的生產數據庫,就像我和我的團隊更新我們的暫存數據庫一樣。
希望有幫助!