【问题标题】:Updating prod database after reverting and adding migrations in dev在 dev 中恢复和添加迁移后更新 prod 数据库
【发布时间】:2020-02-07 22:38:01
【问题描述】:

我正在运行一个带有 ef 核心和两个环境的 asp.net 核心应用程序:prod 和 dev。不久前,我创建了一些迁移并将它们应用于两个环境,但需要在开发中回滚它们。在我回滚 dev 后,我继续开发,现在 dev 中有许多不在 prod 中的迁移,以及我尚未回滚的 prod 中恢复的迁移。所以现在我的环境的迁移看起来像这样:

Prod => a,b,c,d

Dev => a,b,e,f,g

(需要注意的一件主要事情:我在 prod (c,d) 中恢复的迁移 没有被使用,它们只是我创建的模型 未来的使用——我最终改变了——所以这些数据丢失了 迁移不是问题)

我无法运行我最初在 dev 中运行的相同命令,因为我现在没有添加任何迁移,我只需要将 prod 数据库更新为我在本地拥有的迁移。

如果我 update-database b 然后 update-database 这会恢复 prod 中的更改然后更新到我的本地迁移吗?或者这会恢复我在 Visual Studio 中添加的迁移吗?我在这里有什么选择?

【问题讨论】:

    标签: entity-framework-core


    【解决方案1】:

    在生产环境中运行降级到最新的工作迁移:

    Update-Database –Migration b
    

    然后从您的迁移文件夹中删除 2 个迁移 cd

    最后,您可以在生产环境中更新到最新的迁移:

    Update-Database
    

    【讨论】:

    • 我意识到我可以切换到我的主分支,恢复少数迁移,然后切换到我的开发分支并从那里更新数据库。
    猜你喜欢
    • 2014-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    • 2016-09-25
    • 2017-09-12
    • 1970-01-01
    相关资源
    最近更新 更多