在Ruby on Rails中清除或实现表

问题描述 投票:1回答:1

我有一个较大的项目,该数据库已计划进行重组。 (PostgreSQL-使用Rails 5.2)。当前,有些表不再工作,或者至少被分类为“无用”或“创建不良”。在那些“创建不良的表”中,他们引用了确实有效但希望给它们更好目的的表。

我一直在网上搜索,对于在这种情况下最好的方法,我有严重的分歧。

我一直想做的事。

我一直在阅读,我认为是要获得这些数据库,然后删除它们,以防万一有关于构建内容的历史记录。再说一次,我没有制作这个数据库,这是重构它们的任务。所以我的问题是:

我是否将其完全删除?

最佳做法是什么?

在采取行动删除它们之前,我应该知道什么?只能禁用它吗?

ruby-on-rails postgresql database-design ruby-on-rails-5
1个回答
0
投票

您应该只TRUNCATE然后再DROP不再使用的表,以便您可以立即回收存储,如果只删除未使用的表,则无需重新创建数据库,这将是巨大的浪费时间加上可能增加的停机时间。

如果由于未使用某些特定的列而导致要重新制作表,并且它们导致膨胀,那么您将需要创建一个重复表,将所需数据迁移到现有表的重复数据TRUNCATE上,然后移回复制表中的数据,否则Postgres将永远花费大量时间清理存储空间,这会让您感到肿。

© www.soinside.com 2019 - 2024. All rights reserved.