如何开始使用django南数据库迁移?

时间:2012-06-11 19:17:23

标签: django database-migration django-south

我最近从一个相当邪恶的服务器崩溃中恢复过来,我的主机(搞笑)在一次失败的机架迁移中删除了整个服务器。幸运的是,我已经进行了一些备份,服务器已经恢复运行。我一直想开始使用南方,并认为这有助于我将来进行升级。

目前,我在本地计算机上开发,然后将更改推送到我的生产服务器。以前这是一次非常痛苦的经历,但南方看起来可以让事情变得更加轻松。

就目前而言,我的开发机器有一些变化,这些变化还没有达到生产服务器的水平,但是我想将这些变化推出去。开发机器和生产服务器都链接到存储所有代码的subversion帐户。

问题..

  1. 如何在两台机器上安装南方。
  2. 如何使用它将开发计算机上的更改迁移到生产。
  3. 快速示例..

    例如,这会起作用吗?

    1. 为生产服务器上的每个应用程序安装南,并创建初始迁移。
    2. 提交更改为svn
    3. 从生产服务器转储数据库
    4. 查看本地计算机上svn的最新更改。
    5. 此时开发机器应该与生产服务器匹配吗?现在将我的更改从dev更新到生产服务器:

      1. 将我的本地更改复制到开发计算机上签出的副本上,并使用south为我的更新创建迁移。
      2. 提交更改为.svn
      3. 在生产服务器上运行迁移以更新对架构的更改并将数据迁移到新数据库
      4. 这会有用吗?

1 个答案:

答案 0 :(得分:3)

  1. 看一看 http://south.readthedocs.org/en/latest/convertinganapp.html#converting-an-app
  2. 除此之外还很简单:

    on dev:

    • 修改模型
    • ./ manage.py schemamigration app --auto
    • ./ manage.py migrate
    • 检查工作
    • 提交

    on prod:

    • 结帐
    • ./ manage.py migrate
    • 重启服务器
相关问题