php - 在开发、暂存和生产之间同步 Drupal 站点

标签 php database drupal synchronization

通常在启动 Drupal (6.x) 站点后,人们开始注册并输入他们自己的内容。每当需要升级时,生产中的数据库都会被复制到开发中,然后在开发中完成开发,然后推送到暂存中以供客户批准。

当网站最终准备上线时,出现了问题。生产服务器具有最新的用户输入内容,开发和登台具有最新的功能。简单地覆盖生产数据库是行不通的。我通常做的是写下对开发所做的工作,而不是按照步骤在生产中再次检查实现。随着系统变得越来越大,生产上的一个错误可能会导致业务损失。我无法关闭网站几个小时。我不知道在给定时间有多少人在使用该网站,即使如此,也不可能等到网站上没有人的时候再进行升级。

大家有什么好主意吗?

提前致谢。

最佳答案

您需要了解两个概念:第一个是“Exportables”,它通常是一种导出给定模块的所有配置的方法。第二个是“Features”(名字很可怕,是的)这是一种将一组可导出对象分组到给定变更集中以进行版本控制、更新、部署、回滚等的方法。

为澄清起见,许多模块实现了自己的“Exportables”方法,我在上面链接的是 Exportables 模块。这是一个更广泛的策略 - http://www.sthlmconnection.se/tips-and-tweaks/exportable-configuration-your-drupal-module-ctools

关于php - 在开发、暂存和生产之间同步 Drupal 站点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3652760/

相关文章:

php - 选择一些包含特定 INT 的 SQL 行

sql - 模糊匹配SQL中的字符串

php - 模型->保存()在 Yii 中不起作用 -> 显示 ' error '

c# - 存储过程删除查询不起作用。但是当它自己在编辑器中运行而不调用它时它可以正常工作

Drupal 中的 Javascript for() 循环不起作用?

javascript - Ajax 刷新整个页面的问题

php - 具有 libx264 的 ffmpeg 支持的自定义 Heroku Buildpack

php - 克隆依赖项的副本(依赖注入(inject))是否有意义?

drupal - 如何在drupal中获取图像的绝对路径?

php - 如何在代码中获取分类术语的机器名称?