【问题标题】:deploy wordpress database settings and not content部署 wordpress 数据库设置而不是内容
【发布时间】:2012-12-20 00:41:15
【问题描述】:

在无需迁移整个数据库的情况下将 wordpress 数据库设置部署到生产环境的最佳方法是什么?我正在使用 git 和 https://github.com/wp-cli/wp-cli。如果我有一个开发分支结帐需要将其合并回 master,则必须有一种方法可以部署数据库设置,而无需迁移包括内容在内的完整数据库。在 Drupal 中有一个名为“Features”的模块来处理这个过程。任何关于跨多个开发环境的 wordpress 部署过程的建议都很棒。

【问题讨论】:

  • 不太清楚你对数据库设置的意思。访问数据库所需的所有信息都保存在 wp-config.php 中。如果要复制数据库结构,那将是 MySQL 转储。
  • 我会试着解释一下。我的下一个版本需要 4 个新模块。我在本地安装这些模块,然后通过每个模块设置部分配置每个模块。这些设置存储在数据库中。然后我将生产站点置于维护模式以进行部署。如果我将整个本地数据库迁移到生产环境,这也会迁移站点内容的旧快照。其他人如何管理这个?在生产环境中手动更新模块设置的最佳方法是什么?
  • @peter 你是说你可以通过 wp-config.php 定义模块数据库设置吗?

标签: wordpress git deployment web-deployment


【解决方案1】:

您不能定义“模块”,WordPress 术语是插件,在 wp-config.php 中插件设置存储在表 _options 表中,但有些插件使用多行,另一些则创建全新的表。

如果插件没有导出/导入设置的选项,您几乎可以忘记它。您必须深入研究代码以确定数据库中行的名称以及插件是否创建新表。

【讨论】:

  • 感谢@peter 的见解。 wordpress 的大佬们如何管理他们的部署?一定有好的解决办法?
  • 如何在将生产置于维护模式后导出站点内容以获取所有内容的快照,从本地刷新生产数据库,然后再次将所有内容导入生产?
  • 导出有一个问题,您的站点 url、管理员信息(名称、密码、电子邮件)、站点名称,所有这些都被导出。要使其在不同的 URL 上工作,您需要在将其导入新站点之前替换所有这些信息。我这样做(URL 和管理员电子邮件)是为了在本地开发和测试我的网站。如果你想看的话,我可以把它放在 Github 上。
  • 谢谢彼得。那太好了。我正在努力寻找的是针对 wordpress 网站的明确 git 部署计划。也许我的谷歌搜索没有达到标准,但这是一个常见的考虑因素,不是吗?
猜你喜欢
  • 2018-11-28
  • 1970-01-01
  • 1970-01-01
  • 2014-07-14
  • 1970-01-01
  • 1970-01-01
  • 2012-06-11
  • 1970-01-01
  • 2019-04-17
相关资源
最近更新 更多