对现有symfony项目进行重大数据库更改的最佳方法是什么?

时间:2011-02-23 22:01:52

标签: database symfony1 doctrine schema

我有一个大型的实时数据库。进行模式(学说)更改的最佳实践是什么?

在进行开发时,我可以构建所有并重新加载一些灯具,如果我的数据结构发生变化,这通常很好我可以手动调整灯具,以便正确重新加载。如何使用包含数千条记录的大型实时数据库执行此操作?

如果我只是将我的更改提取到我的prod服务器并且数据转储重建并重新加载,那么架构更改可能会阻止数据重新加载(特别是如果我删除了一列)。是否有一些处理此类事情的标准方法?

我还发现在以这种方式重新加载时并不总是保留表行排序。

2 个答案:

答案 0 :(得分:3)

了解学说迁移,这就是它们的用途。无法帮助你具体细节,我是一个推动者。

答案 1 :(得分:1)

虽然可以使用Doctrine Migrations,但它仍处于alpha状态,应谨慎使用。

如果您了解IMO的某些数据库内容,更稳定的解决方案可能是手动更改数据库模式。

Doctrine Migrations:http://www.doctrine-project.org/projects/migrations