Asp.net core mvc ASP.NET核心MVC的生产数据库创建/迁移难题
自去年以来,我一直在构建我的ASP.NET核心MVC web应用程序,目前我的项目中有100个迁移文件,因为数据库随着功能和功能的发展而不断发展。我的开发/测试数据库显然与这次迁移同步 现在,是创建生产环境的时候了,我想要一个只有表模式的空数据库。所以,我不能复制我的测试数据库来创建生产数据库 因此,关于创建此生产数据库,我遇到的问题/困境如下:; 1.我可以通过运行Add Migration命令(需要从项目中删除现有迁移文件)创建生产数据库,也可以 2.在SQL管理服务器中创建表架构,并从测试数据库中保留_EFMigrationsHistory 在[1]中,我不确定如何使用同一项目管理我的测试数据库。 对于[2],我不确定是否有任何缺点 那么,生产部署的标准或最佳实践是什么Asp.net core mvc ASP.NET核心MVC的生产数据库创建/迁移难题,asp.net-core-mvc,entity-framework-migrations,dev-to-production,Asp.net Core Mvc,Entity Framework Migrations,Dev To Production,自去年以来,我一直在构建我的ASP.NET核心MVC web应用程序,目前我的项目中有100个迁移文件,因为数据库随着功能和功能的发展而不断发展。我的开发/测试数据库显然与这次迁移同步 现在,是创建生产环境的时候了,我想要一个只有表模式的空数据库。所以,我不能复制我的测试数据库来创建生产数据库 因此,关于创建此生产数据库,我遇到的问题/困境如下:; 1.我可以通过运行Add Migration命令(需要从项目中删除现有迁移文件)创建生产数据库,也可以 2.在SQL管理服务器中创建表架构,并从测试
谢谢!因此,我有几个后续问题是;(1) 在系统投入生产后,连续的数据库更改又如何呢?我是否通过SQL Server管理不断调整生产数据库,而不是使其与迁移保持同步?(2) 我不想在dev中使用新数据库的原因是,我不想丢失数据(除了seed/config数据)。不完全删除数据库就可以迁移到零状态吗?例如,仅通过删除_EFMigrationsHistory表和迁移文件?Hi 1。对于生产,最好假设所有更改都需要编写脚本(并由db管理员运行),因为将Visual Studio连接到您的实时环境是不常见的。对于后续更改,您可以让EF为您创建迁移脚本2。对于开发人员来说,您可以随时备份SQL数据,这将使您能够整理迁移—或者,如果这是一件麻烦事,可以保持迁移的原样,以较容易的为准。