rin*_*ter 6 deployment drupal drupal-database
我有机会使用开发,登台和生产环境来生成Drupal网站.使用subversion确保代码在站点之间保持同步是一项简单的任务.不那么简单的是在安装之间传播对数据库数据(而不仅仅是模式)的更改.
任何Drupal开发人员都会熟悉这个原因.Drupal在数据库中存储某些配置设置,特别是与CCK字段,视图和其他允许使用管理界面动态设置的模块相关.简单地同步模式是不够的 - 基本信息也在数据中.
我正在寻找的是一种同步这些数据库更改的方法,以便如果一个开发人员在登台服务器上进行CCK字段更改,则可以将它们传播到本地开发环境以进行更多工作,最终传播到生产环境.
有没有一个工具可以做到这一点?在这样的项目中处理单个或多个开发人员的流程是什么?
对于基本数据同步:我使用mysqldump每晚将所有数据转储到.sql文件.然后脚本将其检入版本控制系统.这是一个简单的bash脚本,但你可以在几乎任何平台上做类似的事情......
我刚才读了一点,我不确定我的方法是否会有所帮助.我从来没有必要合并SQL转储,所以我无法评论它的管理效率.
虽然您应该能够将更改(架构,新数据)推送到登台/生产服务器,但您可能会有更多麻烦将更改拉回到开发人员.正如我所说 - 合并可能有也可能不可能.我只是不知道.
在这里,我们几乎将 CCK 降级为用于原型和 v.simple 节点类型。尝试将数据库中的“配置”与“内容”分开是不值得的。您可以尝试使用各种方法来保持同步,但简而言之,除非它位于文件中或为您提供导出到文件的选项,否则您将会受到伤害。(作为额外的好处,将视图导出到文件比每次使用时将其从数据库中拉出要快一些。)
您提到了开发、暂存和实时服务器 - 如果您有开发人员在暂存中进行未记录的更改,那么您就完蛋了。如果您定期将 Staging 与 Live 同步,并强制执行(常识)策略,即对 Staging 所做的唯一更改是在开发中已解决的内容,并且在转移到 Live 之前正在测试,那么您可能会取得更大的成功。
归档时间: |
|
查看次数: |
2431 次 |
最近记录: |