迁移现有的Postgres数据库以在Heroku上使用South。

时间:2014-05-21 12:41:38

标签: django postgresql django-south

我是Django的新手,它是在Heroku上部署的。

我已在应用服务器上启动并运行Postgres数据库。我的应用程序要求需要我在现有数据库中添加一个新列,其中包含大量数据,我不能丢失。

环顾四周,我找到了Mike Ball here描述的解决方案。 我有以下问题:

  • 南方到底是什么? (我阅读了文档,但没有明确的想法)

  • 它能帮我保存并移动现有数据库中的现有数据吗?

  • 作为一个完整的新手,上面的链接是一种移动数据的简单方法吗?

另外,一般情况下,如果您能为我提供一般DBMS概念的良好指南,我将非常感激。

谢谢!

1 个答案:

答案 0 :(得分:0)

南方究竟是什么? (我阅读了文档,但没有明确的想法)

south会在数据库架构及时更改时迁移它。架构必须以django models.py文件开头。如果您使用' manage.py syncdb ...'为了创建你的数据库,你可以使用south。

它能帮我保存并移动当前数据库中的现有数据吗?

只要您使用syncdb使用django中的models.py文件创建数据库,则south可以更改该数据库并添加新列。基本上,south会记录您对迁移文件中的models.py文件所做的更改,然后您可以将这些迁移文件应用到数据库中,从而非破坏性地更新它。

作为一个完整的新手,上面的链接是一种移动数据的简单方法吗?

南方没有移动您的数据。它允许您在不破坏数据库的情况下将新列添加到现有数据库。要移动数据,您需要将数据备份到文件,然后将文件复制到另一台计算机,然后还原备份。这不是南方所做的。

相关问题