所以我有一个EF Core项目 . 当我需要添加/迁移时,我发出并更新命令:
dotnet ef数据库更新-v
这一切都正常,如果我需要更新QA,Staging,Prod数据库,我更新appsettings.json文件中的连接字符串并运行命令 .
如果我无法从本地计算机访问 生产环境 ,会发生什么?您如何将数据库更新到最新的迁移?
如果我记得使用Entity Framework(不是.net核心) . 当我部署新版本的.net应用程序时,它会尝试自动更新数据库 . .NET核心中是否仍存在此功能?
1 回答
是的,你可以跑
在启动时,将数据库迁移与应用程序生命周期混淆通常不是一个好主意 - 最佳做法是尽可能快速,简单地启动应用程序,因为应用程序启动失败很难远程诊断,迁移会引入很多不受欢迎的复杂性 .
另一种方法是在部署过程中运行迁移操作 . 这取决于您使用什么方法进行部署,但比如说您使用CI服务器,您将能够运行
after 复制新代码但 before 启动应用程序备份 .