我如何在一个开发副本上对站点进行更新,然后在不覆盖实时站点不断发展的数据库的情况下将更新移回?

时间:2014-03-09 作者:James

我试图在标题中尽可能地描述,我知道以前有人以各种形式提出过这个问题,但我找不到很好的答案,可以想象没有人解决这个问题。

很简单,一旦WP站点上线,如果它不是静态站点,那么它会通过添加新帖子、新woocommerce订单、新用户帐户等方式不断更新其数据库。”

如果我想对站点进行一些重大更改和更新,最简单、最简单的方法是复制到本地安装或其他开发域,并在那里进行所有更改。完成所有更改后,我想将它们复制回live站点。

如果更改仅限于文件,如主题和css,那么这就有点容易了。但是,如果更改涉及数据库中的更改,例如添加新插件和添加与这些插件连接/相关的内容,那么我再也不能只复制回站点,因为它将覆盖添加到live站点数据库中的任何新更改。所有新帖子、新订单、新图片上传都将被删除。

现在我知道不同的案例场景有不同的解决方案,但难道没有一种方法可以解决所有案例吗?

例如,如果对live站点所做的唯一更改是新帖子,那么我可以将帖子导出并导入到开发人员站点,然后移动整个站点。与其他一些项目相同,但不是每种项目。另一个问题是wordpress中的导出和导入功能非常糟糕。它非常简单,您几乎没有选择和仅导出特定项目的选项。我可能已经尝试了所有的“高级导入/导出”插件,但没有什么可以解决这个问题。

所以在另一个帖子中,有人指出this plugin 基本上在live站点上安装和处理主题,而普通用户仍然可以看到现有的主题,但这仍然不能解决所有类型的更改。因为如果你想更改内容,比如页脚或导航菜单,它仍然会反映在现有的可查看主题/站点中,并且在新的测试主题上看起来不错,但在实时主题上可能不会。

是否无法在同一站点/数据库上开发站点的“分支”,然后切换?或者,除了以非破坏性的方式合并数据库之外,没有其他方法可以在开发人员站点上进行开发吗?如果您知道您影响了哪些组件和事情,那么是否有办法做到这一点?或者,您是否需要成为MySQL大师才能尝试这样的事情。

我不可能是唯一一个有这个难题的人。我无法想象这个问题没有解决办法。如何做到这一点?

提前谢谢。

1 个回复
SO网友:user57081

要做你想做的事情真的不是一个简单的方法,但我要做的是为你的网站做一个快照,实施你的更改,如果有任何问题,请停止恢复并重试。它可能会关闭一个小时,但我最近做了这件事,当时我不知何故用砖块砌了一个我正在工作的网站。这可能不是解决问题的“正确”方法,但对我来说,它是可行的。祝你好运

结束

相关推荐

Database create or redirect

我在ABC网站工作。com,我只能访问根文件夹。我计划安装wordpress。我需要以某种方式创建一个没有任何cPanel的数据库。或者,我想到的第二个选择是,如果我可以在服务器A中安装wordpress,在那里我只能访问根文件夹,并使用另一台服务器B中的数据库,我可以通过cPanel完全控制该数据库。我已经在服务器B上创建了一个数据库。但是如何设置它(可能通过wp config.php),以便可以通过域访问它。第三种选择是,如果我可以在服务器B上创建一个站点(DEF.com),那么服务器a上的站点域(A