部署修改wp_Options表的已更新插件或新插件

时间:2011-12-01 作者:Scott

我有一个受Git本地版本控制的WordPress站点。我使用Capistrano将其部署到生产服务器。

对于初始部署,我手动将SQL数据库导入生产服务器,并手动更改所有本地引用。此后,将在生产服务器上进行任何内容更改。

这在很大程度上是可以的,但在测试/配置新的或更新的插件时,我遇到了一个问题,因为许多插件都会更改wp\\u选项表。我需要一种方法来在本地添加/删除/更新/配置插件,进行所有测试,然后将更新后的站点无缝部署到生产服务器上,而不破坏任何功能。

其他人是如何处理的?

1 个回复
最合适的回答,由SO网友:Wyck 整理而成

不太好。在动态移动数据库时,不仅WordPress存在问题,而且插件通常也存在问题,正如我所知,没有一种简单(或毫不费力)的方法可以做到这一点,这充其量只是黑客行为,因此大多数人仍然使用数据库转储。

如果您只关心保留db url,那么可以使用vhost文件在本地主机上模拟实时url。

如果要保留所有数据(id、内容等),则可以同步数据库,只需使用预防措施或临时服务器,因为如果发生本地更改或错误,这可能会导致灾难。这并不常见,因为任何本地数据库存储的更改都会影响实时站点的数据库,因此它实际上只适用于更改代码。

备选方案是将上述内容与服务器脚本相结合,服务器脚本可以自动迁移和筛选数据库,github和其他地方也有一些这样的脚本。

一些有用的链接:

我也相信现在有一些第三方服务(主机)可以做到这一点。

结束

相关推荐

帮助运行MySQL查询以更新多站点安装中的所有wp_#_options表

我想通过我的WordPress数据库运行一个查询,更新所有单个站点上的blog\\u公共值。我一直在思考如何让语句查找wp\\U 2\\U选项、wp\\U 3\\U选项等。我可以单独做这样的事情:UPDATE wp_10_options SET option_value = REPLACE(option_value, \'1\', \'0\') 但我一直在思考如何运行一个可以遍历所有表的查询。有什么帮助吗?提前感谢:)