重置长时间的 Django 迁移

     2023-02-24     289

关键词:

【中文标题】重置长时间的 Django 迁移【英文标题】:Reset long Django migrations 【发布时间】:2016-11-11 04:30:28 【问题描述】:

随着项目的发展,迁移(makemigrationsmigrate) 都需要越来越长的时间,每次部署都会延迟很多。 Django 让您转到squash them,因此您没有很长的迁移文件列表,但迁移需要相同的时间。

然后我尝试了以下方法:

    删除我的应用中的所有迁移文件 清理数据库中的django_migrations表 运行makemigrations(为我的应用创建0001_initial) 运行migrate --fake(以填充到django_migrations 表)

现在新的迁移速度非常快,但代价是丢失了迁移历史。

所以我的问题是,考虑到这可能类似于 v1.0,并且它是任何其他项目都依赖的独立项目,这样做有什么风险?

我觉得这是不应该做的事情,因为我找不到任何特定的 Django 命令来做这件事。 South 已重置,但现在 django 迁移只有壁球...

【问题讨论】:

如果您不真正关心向后迁移,这将不是问题。 【参考方案1】:

只要在您删除迁移时所有您的安装都是最新的,删除旧迁移并没有什么坏处。唯一的缺点是一旦删除它们就不能轻易回到数据库的历史状态,但除了旧的备份文件,你不应该使用它。

正如我所指出的,只要确保使用您项目的每个人之前都是最新的(或者在删除之前给他们指示,以便他们可以在升级到 HEAD 之前进行迁移,如果您使用的是源版本控制) .

如果您正在开发第三方应用程序,这将使安装更加复杂(无论您是升级还是安装,都需要处理 --fake 参数...),但这不是您的情况。

【讨论】:

Django重置不删除表

】Django重置不删除表【英文标题】:Djangoresetnotdroppingtables【发布时间】:2011-01-1004:15:12【问题描述】:我刚刚将我的开发环境从UbuntuLinux迁移到MacOSX雪豹。所有这些都在Linux上运行。在这两者上,我都将MySQL用于Django的数据库。Dj... 查看详情

在将项目部署到服务器之前重置所有迁移是一种好习惯吗?

】在将项目部署到服务器之前重置所有迁移是一种好习惯吗?【英文标题】:Isitgoodpracticetoresetallmigrationbeforedeployprojecttotheserver?【发布时间】:2021-12-0512:38:40【问题描述】:我有两个关于部署最佳实践的问题,与迁移相关。我正... 查看详情

manage.py 迁移时必须是关系 django_site 的所有者

...ge.pymigrate【发布时间】:2016-01-1317:21:28【问题描述】:在长时间搜索关于postgre、manage.pykillorphant、django_site之后,没有什么能帮助我解决这个错误:Synchronizingappswithoutmigrat 查看详情

登录期间长时间的 observeChanges 调用

】登录期间长时间的observeChanges调用【英文标题】:LongobserveChangescallduringlogin【发布时间】:2016-02-1305:38:39【问题描述】:我们发现Meteor应用程序的登录响应时间非常慢。随着负载接近200次登录/分钟,observeChanges调用变得非常缓... 查看详情

偶尔会遇到长时间的垃圾收集延迟,为啥?

】偶尔会遇到长时间的垃圾收集延迟,为啥?【英文标题】:Experiencingoccasionallonggarbagecollectiondelays,why?偶尔会遇到长时间的垃圾收集延迟,为什么?【发布时间】:2010-10-0907:57:30【问题描述】:我很难处理Java垃圾收集问题和解... 查看详情

为啥 select Top 子句会导致长时间的成本

】为啥selectTop子句会导致长时间的成本【英文标题】:WhyselectTopclausecouldleadtolongtimecost为什么selectTop子句会导致长时间的成本【发布时间】:2012-03-0811:30:52【问题描述】:以下查询需要很长时间才能完成。但是如果我删除top10子... 查看详情

Laravel:在迁移之前删除迁移:重置

】Laravel:在迁移之前删除迁移:重置【英文标题】:Laravel:Deletemigrationbeforemigrate:reset【发布时间】:2017-09-0320:27:48【问题描述】:我是Laravel的新手。我正在尝试使用以下命令重置数据库中的所有表:phpartisan迁移:重置不幸的是... 查看详情

使用 Java 管理非常长时间的操作

】使用Java管理非常长时间的操作【英文标题】:ManagingverylongtimeoperationswithJava【发布时间】:2013-01-0423:09:26【问题描述】:其实我有如下流程:用户点击“大操作”按钮;它调用一个RESTful服务;其余服务调用一个HugeOpServiceBean,... 查看详情

如何找到需要这么长时间的 rspec 测试

】如何找到需要这么长时间的rspec测试【英文标题】:Howtofindwhichrspectestistakingsolong【发布时间】:2011-10-2006:02:33【问题描述】:我们的一个(或几个)测试需要很长时间,我们希望对其进行优化。我们说有1000次测试,所以对我... 查看详情

长时间的 Android 构建时间挂在 minify 上

】长时间的Android构建时间挂在minify上【英文标题】:LongAndroidbuildtimeshangingonminify【发布时间】:2020-07-1116:49:02【问题描述】:最近我一直在扩展我的项目以包含com.google.firebase:firebase-auth:19.3.0功能。结果我遇到了以下错误:Cannotf... 查看详情

检测需要很长时间的 node.js http.get 调用

】检测需要很长时间的node.jshttp.get调用【英文标题】:detectingnode.jshttp.getcallsthattakelongtime【发布时间】:2014-09-0404:33:22【问题描述】:进行多次http调用以呈现页面的处理程序需要很长时间才能返回。我想检测哪些调用需要很长... 查看详情

使用长时间的 Thread.Sleep 是个好主意吗?

】使用长时间的Thread.Sleep是个好主意吗?【英文标题】:IsitagoodideatouselongtimeThread.Sleep?【发布时间】:2012-06-1910:33:13【问题描述】:我有一份工作清单。每个作业都有自己的运行时间。他们需要在时机成熟时奔跑。我认为两种不... 查看详情

Laravel 迁移重置失败

】Laravel迁移重置失败【英文标题】:Laravelmigrationresetfails【发布时间】:2014-12-2313:36:49【问题描述】:我在Laravel中制作了一些迁移文件。当我输入phpartisanmigrate在我的终端中,一切正常。如果我想回滚所有迁移,我输入phpartianmig... 查看详情

如何恢复已关闭很长时间的 Cassandra 2.0 节点

】如何恢复已关闭很长时间的Cassandra2.0节点【英文标题】:HowdoIbringbackaCassandra2.0nodethat\'sbeendownforalongtime【发布时间】:2022-01-0909:42:07【问题描述】:我们有一个Cassandra2.0.17集群,有3个DC,每个DC有8个节点,RF为3。我们没有对其... 查看详情

如何显示进度对话框以及长时间的操作和改造?

】如何显示进度对话框以及长时间的操作和改造?【英文标题】:Howtoshowaprogressdialogalongwithalongoperationandretrofit?【发布时间】:2017-05-3021:19:19【问题描述】:我有一个漫长的过程,用于将所选图像从图库转换为字节数组,并使用... 查看详情

W10 应用程序经过多长时间的认证?

】W10应用程序经过多长时间的认证?【英文标题】:ForhowlongisaW10appcertified?【发布时间】:2016-08-1221:05:45【问题描述】:我曾为客户开发过Windows10UWP应用。他提供了一个有效的证书,我用它签署了应用程序。该应用程序不打算在W... 查看详情

django系列12:django模型关系

迁移分两步实现生成迁移文件执行迁移文件迁移文件的生成根据models文件生成对应的迁移文件根据models和已有迁移文件差别生成新的迁移文件执行迁移文件先去迁移记录查找,哪些文件未迁移过app_label+迁移文件名字执行未迁移... 查看详情

迁移需要很长时间才能应用到数据库

】迁移需要很长时间才能应用到数据库【英文标题】:MigrationtakingalotoftimetoapplytotheDB【发布时间】:2016-01-1723:30:49【问题描述】:我正在处理一个实体框架项目(代码优先),并且遇到了改变表格的情况。我已经运行了相同的add... 查看详情